相反,在构建ASP.NET MVC应用程序时,URL和页面就不是一一对应关系了,在ASP.NET MVC应用程序中,一个URL对应一个控制器行为,而不是硬盘上的一个页面文件。

  在传统ASP.NET和ASP应用程序中,浏览器请求被映射到页面,在ASP.NET MVC应用程序中,浏览器请求映射到控制器行为,ASP.NET应用程序是以内容为中心,相反,ASP.NET MVC应用程序是以应用逻辑为中心。

  理解URL路由

  浏览器请求通过ASP.NET MVC的一个叫做URL路由的特性映射到控制器行为,URL路由路由入站请求给控制器行为。

  URL路由使用路由表处理入站请求,当你的应用程序第一次启动时创建这个路由表,路由表配置在Global.asax文件中,默认的MVC Global.asax文件内容如清单1所示。

  清单1 Global.asax

Public Class GlobalApplication
   Inherits System.Web.HttpApplication
     Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}")
        ' MapRoute takes the following parameters, in order:
        ' (1) Route name
        ' (2) URL with parameters
        ' (3) Parameter defaults
        routes.MapRoute( _
          "Default", _
          "{controller}/{action}/{id}", _
          New With {.controller = "Home", .action = "Index", .id = ""} _
        )
     End Sub
     Sub Application_Start()
        RegisterRoutes(RouteTable.Routes)
     End Sub
End Class

posted on 2009-07-24 16:24  vibratea  阅读(184)  评论(0编辑  收藏  举报