ASP.NET 2.0的URL映射的实现方法(转载)

   URL映射ASP.NET 2.0中提供的新特性。URL映射技术帮助我们将一个特定URL映射为另一个URL。为了帮助理解,我们假设你在站点有一个叫Homepage.aspx的页面来访问主页,所有的用户也都用这个页面来访问你的主页。但由于某些原因,你要将主页改为OriginalHome.aspx。此时使用URL映射让你可以映射到新页面,而不必通知用户。

  如果我们设置了URL映射,那么任何用户在URL栏输入Homepage.aspx时,调用的都是OriginalHome.aspx。

  深入概念:

  让我们看看如何实现它。

  这可以在configuration部分实现。

  语法:

 

以下是引用片段:

注意:此配置文件要写在Web.config文件的 <system.web></system.web>这两个节点中间。
 <urlMappings enabled="true">
      <add url="~/用户要访问的页面.aspx" mappedUrl="~/要重定向到的页
面.aspx"/>
 </urlMappings>

 

    如果你想使用URL映射,你必须将enabled属性设置为true。每个add元素都含有一个原URL和映射URL。
    
    现在假设有一个Index.aspx的页面后来因为某种原因删除了,而我们想重新定向到NewIndex.aspx页面中。就可以这样做。
  一旦我们进行了修改或在工程的web.config文件中增加了如上的元素,任何用户试图访问Index.aspx时,由于URL映射,都将调用NewIndex.aspx页面。有趣的是在URL栏中仍然仅显示Index.aspx。所以尽管想到内部调用了NewIndex.aspx,用户在URL栏仍见到Index.aspx。

  一些优点:

  1.若你的客户标记了到一个页面的链接,但你又得删除该页并在换上其他页面,那么使用URL映射你可以解决这个商业问题而不用让客户知道这个页面变化。

  2.若有一个大而复杂的URL,但不想把它给用户,那么你可以告知简单的URL,而自己将简单的URL映射到原先的URL。

  3. 用这个方法可以方便处理菜单控件。最好的例子就是ASP.NET站点。

  4.这里也可以增强安全性,用户无法在URL栏看到真实的页面名,这也是一种简单的加密!

posted @ 2011-12-07 13:03  ^_^肥仔John  阅读(182)  评论(0编辑  收藏  举报