当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 用好ASP.NET 2.0的URL映射

ASP.NET
asp.net 转换人民币大小金额
编写的vs2005水晶报表程序在vs2008下正常使用的一些实现方法
asp.net下获取浏览器类型的实现代码
asp.net coolite 删除时弹出确定按钮
asp.net Forms身份验证和基于角色的权限访问
asp.net 用继承方法实现页面判断session
asp.net DataGrid 中文字符排序的实现代码
asp.net 利用IIS的404错误将文件重写成目录的简单方法
Aspx/Asp.net 防注入程序 V1.0
C# 数组查找与排序实现代码
ASP.NET通过使页面动态加载不同CSS实现多界面
LINQ学习笔记:XDocument文档与XML声明
ASP.NET教程:如何动态写入服务器端控件
XML+XSLT+CSS+JQuery+WebService组建Asp.Net网站
ASP.NET效率陷阱之:Attributes
.NET vs J2EE:面对SOA的荒谬与误解
ASP.NET学习篇(1):开篇
ASP.NET学习篇(2):安装与配置
ASP.NET学习篇(3):几个简单的ASP.ENT的例子
ASP.NET学习篇(4):服务器端的控件

用好ASP.NET 2.0的URL映射


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 161 ::
收藏到网摘: n/a

简介:

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

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

深入概念:

让我们看看如何实现它。

这可以在configuration部分实现。

语法:

<urlMappings enabled="[true|false]">
<add url="String"
mappedUrl="String"/>
</urlMappings>

如果你想使用URL映射,你必须将enabled属性设置为true。每个add元素都含有一个原URL和映射URL。对,概念很简单!如果我们为上述场景配置了URL映射,config文件中的元素显示如下:

<urlMappings enabled="true">
<add url="~/ Homepage.aspx" mappedUrl="~/ OriginalHome.aspx"/>
</urlMappings>

一旦我们进行了修改或在工程的web.config文件中增加了如上的元素,任何用户试图访问Homepage.aspx时,由于URL映射,都将调用OriginalHome.aspx页面。有趣的是在URL栏中仍然仅显示Homepage.aspx。所以尽管想到内部调用/执行了OriginalHome.aspx,用户在URL栏仍见到Hopepage.aspx。

一些优点:

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

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

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

4.这里也牵涉到安全(用户无法在URL栏看到真实的页面名,这也是一种加密!)。

希望你喜欢这个新特性。

是的,我知道,现在你的问题是,既然现在ASP.NET 2.0还没有面市,怎么利用这个新特性呢。这里有个变通方法。Stev在他的blog里进行了简要的解释。

你可以在http://weblogs.asp.net/ssmith/archive/2003/11/06/36191.aspx看到。他的解释非常简单,根据你的实际案例,你可以为它增加功能