15 Asp.Net路由系统

1. Asp.Net路由系统介绍

Asp.Net URL 路由系统并不是专属于 ASP.NETMVC 的,而是直接建立在 ASP.NET 上,因此ASP.NET Web Forms也可以用它。整个 URL 路由系统,是通过一个名为 UrIRoutingModule 的自定义 HttpModule 实现的。

Asp.Net URL 路由系统的主要用途有两个: 1. 解析用户输入的URL,调用Controler的Action方法来执行具体的功能。 2. 把Controler的Action输出成URL。

具体效果:它实现了请求地址与物理文件的分离,对于原来的 Asp, ASP.NET Web Forms 应用来说,每一个有效的请求都对应着一个具体的物理地址,但是这种将 URL 与物理文件紧密绑定在一起的方式并不是一种好的解决方案。当网站能够正常高效的运行之后,也就是在解决了有无的问题之后,我们还要让网站更好。
    劣 http://example.com/products/list.aspx?category=food     优 http://example.com/products/list/food     劣 http://exmaple.com/show.aspx?year=2010&month=08&day=23     优 http://example.com/show/2010/08/23

 

2. 请求 URL 与物理文件的分离

对于一个 ASP.NET Web Forms 应用来说,每一个有效的请求都对应着一个具体的物理文件。它有两大局限性:

• 可读性不强: 在很多情况下, URL也不仅仅具各基本的可用性(能够访问正确的网络资源), 还需要具有很好的可读性。好的 URL 设计应该让我们一眼就能看出针对它访问的目 标资源是什么。请求地址与物理文件紧密绑定会让我们完全失去了定义可读性 URL 的机会。

• SEO 优化困难: 对于网站开发来说,为了迎合搜索引擎检索的规则,我们需要对 URL 进行有效的设计使之能易于被主流的引擎检索收录,如果 URL 完全与物理地址关联,这无异于失去了 SEO 优化的能力。

 

3. 路由配置示例

 

posted @ 2015-03-09 16:50  紫色物语  阅读(137)  评论(0编辑  收藏  举报