2010-11-04 59 views
1

簡單的例子..如何面向未來的一個頁面的引用可能會改變

的Response.Redirect(「/存儲/ packages.aspx」);

我想直接從web.sitemap文件中引用「/store/packages.aspx」,如果可能的話。這樣,如果有一天我重命名或移動文件packages.aspx,我不必在代碼中找到每個我在哪裏硬編碼URL的實例。

實現此目的的最佳方法是什麼?

+0

這就是爲什麼我們的系統中每個URL都有字符串常量的原因。 (WebsiteUrls.cs) – RPM1984 2010-11-04 04:26:42

回答

1

這可能是矯枉過正,你正在做什麼,但檢查出T4MVC。簡短的版本是它從你的項目中的文件生成類。然後,您引用生成的類的成員,而不是對URL進行硬編碼,並且如果名稱更改並且您的引用尚未更新,則會收到編譯錯誤。它專門爲MVC構建,但模板可能可以修改以滿足您的需求。

正如RPM1984所提到的,更簡單的解決方案是維護一組常量字段並引用那些需要路徑的地方。

相關問題