《【ASP.NET专题】(1)——ASP.NET MVC初探》:http://blog.csdn.net/rocket5725/archive/2010/01/11/5177320.aspx
留下了一个问题:我们如何想看到Index.aspx和About.aspx的页面我们应该怎么办呢?
答案就是我们可以使用URL Routing来配置一些URL的映射,使用户可以按你的规则来访问网站。
一、什么是URL Routing?
使用URL Routing,一定要规定URL模式,它包括一个位置标识,它将在你请求网页时按这个规则返回给你内容. 当然,这个创建的规则完全是由你自己定义的.
上回说道如何访问index.aspx及about.aspx?
但是http://localhost/Views/Home/Index.aspx和 http://localhost/Views/Home/About.aspx这两个地址并无法直接访问以下两个文件:Views/Home/Index.aspx 与 Views/Home/About.aspx
这是怎么回事呢,那我们要怎样才能访问呢 ?
答案是: http://localhost/Home和http://localhost/Home/About
这是为什么呢?
这就是UrlRouting的功能,而这个功能的配置是由,URL的请求规则定义的,这个规则定义在Global.asax.cs中定义。
二、基本URL Routing规则的定义
我们可以查看到Global.asax.cs的代码,如下:
注意这一点ASP.NET MVC 中URLRouting只与Controller/Action有关。
三、URL Routing解决的问题
UrlRouting是为了让Url更简短更有意义才出现的,例如:post.aspx?year=1999&month=3&day=8 的参数URL变为
/post/1999/3/8/ 这样的简短漂亮且有意义的URL
而类似home/about.aspx?id=12,以示例中的Global.asax.cs中定义的{controller}/{action}/{id}规则为列/Home/About/12其实就是访问Controller="Home" Action="About" 它的一个QueryString参数为 id="12"
四、URL Routing相关的资料
为尊重原创,现给出地址:
System.Web.Routing入门及进阶 上篇
System.Web.Routing入门及进阶 下篇
System.Web.Routing 的说明文档