ASP.NET 2.0中的URL映射
URL映射是ASP.NET 2.0中提供的新特性
簡介:
URL映射是ASP.NET 2.0中提供的新特性。URL映射技術(shù)幫助我們將一個特定URL映射為另一個URL。為了幫助理解,我們假設(shè)你在站點有一個叫Homepage.aspx的頁面來訪問主頁,所有的用戶也都用這個頁面來訪問你的主頁。但由于某些原因,你要將主頁改為OriginalHome.aspx。此時使用URL映射讓你可以映射到新頁面,而不必通知用戶。
如果我們設(shè)置了URL映射,那么任何用戶在URL欄輸入Homepage.aspx時,調(diào)用的都是OriginalHome.aspx。
深入概念:
讓我們看看如何實現(xiàn)它。
這可以在configuration部分實現(xiàn)。
語法:
- 〈urlMappings enabled="[true|false]"〉
- 〈add url="String"
- mappedUrl="String"/〉
- 〈/urlMappings〉
如果你想使用URL映射,你必須將enabled屬性設(shè)置為true。每個add元素都含有一個原URL和映射URL。對,概念很簡單!如果我們?yōu)樯鲜鰣鼍芭渲昧薝RL映射,config文件中的元素顯示如下:
- 〈urlMappings enabled="true"〉
- 〈add url="~/ Homepage.aspx" mappedUrl="~/ OriginalHome.aspx"/〉
- 〈/urlMappings〉
一旦我們進行了修改或在工程的web.config文件中增加了如上的元素,任何用戶試圖訪問Homepage.aspx時,由于URL映射,都將調(diào)用OriginalHome.aspx頁面。有趣的是在URL欄中仍然僅顯示Homepage.aspx。所以盡管想到內(nèi)部調(diào)用/執(zhí)行了OriginalHome.aspx,用戶在URL欄仍見到Hopepage.aspx。
一些優(yōu)點:
1.若你的客戶標記了到一個頁面的鏈接,但你又得刪除該頁并在換上其他頁面,那么使用URL映射你可以解決這個商業(yè)問題而不用讓客戶知道這個頁面變化。
2.若有一個大而復(fù)雜的URL,但不想把它給用戶,那么你可以告知簡單的URL,而自己將簡單的URL映射到原先的URL。
3. 用這個方法可以方便處理菜單控件。最好的例子就是asp.net站點。
4.這里也牽涉到安全(用戶無法在URL欄看到真實的頁面名,這也是一種加密?。?。
希望你喜歡這個新特性。
是的,我知道,現(xiàn)在你的問題是,既然現(xiàn)在ASP.NET 2.0還沒有面市,怎么利用這個新特性呢。這里有個變通方法。Stev在他的blog里進行了簡要的解釋。
你可以在http://weblogs.asp.net/ssmith/archive/2003/11/06/36191.aspx看到。他的解釋非常簡單,根據(jù)你的實際案例,你可以為它增加功能。
現(xiàn)在你可以使用這個技巧,而等ASP.NET 2.0面市,你就可以利用新特性了。
【編輯推薦】