当前位置:首页 > ASP.NET MVC Framework体验(5):路径选择(URL Routing)

ASP.NET MVC Framework体验(5):路径选择(URL Routing)

点击次数:1029  更新日期:2010-12-29
\n


\n

概述


\n

在传统的ASP.NET应用程序中,发生一个请求之后将映射到一个.aspx文件,且会对应到一个具体的物理aspx文件。ASP.NET MVC Framework中,进入一个请求之后,不再是映射到.aspx文件,而是由MVC Framework中提供的路径选择引擎,映射到正确的Controller和Action执行请求。ASP.NET MVC Framework中URL路径映射规则定义在Global.asax中,这在一定程序上带来了很多的灵活性,如果想要修改URL应用结构的话,只需要修改一下映射规则即可,并不需要修改Controller和View中的代码,但是这仍然不够灵活。改变Global.asax代码仍然会导致应用程序的重新编译,本篇文章末尾部分将会介绍如何通过HttpModule定义映射规则在Web.config中。


\n

理解路径选择


\n

先看一下下面这幅图:


\n

TerryLee_MVC_010


\n

从上图中可以看到,发生一个请求之后,第一步就是路径选择,而映射规则是通过在Routes集合中添加Route实例来注册的,如:


\n
RouteTable.Routes.Add(
\n new Route
\n {
\n Url = “[controller]/[action]“,
\n Defaults = new { action = “Index”},
\n RouteHandler = typeof(MvcRouteHandler)
\n });

\n