ASP.NET MVC RegisterRoutes浅解

来源:互联网 发布:fifaol3非i发数据库 编辑:程序博客网 时间:2024/06/06 04:38

ASP.NET MVC的Global.asax文件中的Application_Start()方法里面的RegisterRoutes(RouteTable.Routes)是用来注册路由的。

默认的方法如下:

public static void RegisterRoutes(RouteCollection routes){    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");    routes.MapRoute(        name: "Default",        url: "{controller}/{action}/{id}",        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }    );}

我们可以自己添加自定义的路由规则,如下:

public static void RegisterRoutes(RouteCollection routes){    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");    #region  我的路由    routes.MapRoute(        name: "NotFound", // Route name        url: "notfound", // URL with parameters        defaults: new { controller = "Home", action = "NotFound", id = "" } // Parameter defaults    );    routes.MapRoute(        name: "Error",        url: "error",        defaults: new { controller = "Home", action = "Error", id = "" }    );    #endregion    routes.MapRoute(        name: "Default",        url: "{controller}/{action}/{id}",        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }    );}

用以上路由设置,若在网址后面输入了/notfound,则会访问Homl控制器中的NotFound的Action 。

Error也是同理。

0 0
原创粉丝点击