首页 > 代码库 > 用路由设置,记录下
用路由设置,记录下
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 } // 参数默认值 );
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。