routes.MapRoute( "Default_a", "huhangfei/{pageindex}-{state}-{size}.html", new { controller = "Home", action = "Index", pageindex = 1, state = 0 ,size=0}, new { pageindex = @"\d+", state = @"\d+", size = @"\d+" } ); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } );
大家在学习MVC的过程,老是用到设置路由,但有6个常用路由,是大家经常用到的。
一.默认路由(MVC自带)
public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带有参数的 URL new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值 (UrlParameter.Optional-可选的意思) ); }
二.不带参数的路由
routes.MapRoute ( "NoParameter", "{controller}/{action}/{id}" );
三.带命名空间的路由
routes.MapRoute( "AdminControllers", // 路由名称 "{controller}/{id}-{action}", // 带有参数的 URL new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // 参数默认值 new string[] { "Admin.Controllers" }//命名空间 );
四.带约束的路由规则(约束的意思就是用正则这类约束必须符合条件才可以)
routes.MapRoute( "RuleControllers", "{controller}/{action}-{Year}-{Month}-{Day}}", new { controller = "Home", action = "Index", Year = "2010", Month = "04", Day = "21" }, new { Year = @"^\d{4}", Month = @"\d{2}" } //4位数 2位数 );
五.带名称空间,带约束,带默认值的路由规则
routes.MapRoute( "Rule1", "Admin/{controller}/{action}-{Year}-{Month}-{Day}", new { controller = "Home", action = "Index", Year = "2010", Month = "04", Day = "21" }, new { Year = @"^\d{4}", Month = @"\d{2}" }, new string[] { "Admin.Controllers" } );
六.捕获所有的路由
routes.MapRoute( "All", // 路由名称 "{*Vauler}", // 带有参数的 URL new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值 );
用路由设置,记录下
时间: 2024-11-10 07:06:25