在项目文件夹下找到 App_Start 下 找到 RouteConfig.cs文件 打开
(1) 约束的规则 从上往下 贪婪性
(2) 用 routes.MapRoute(...) 添加
(3) 路由的反射机制 <%= Url.Action("方法名","控制器名",new{参数名= 值}) %>
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace TestTwo { public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); //禁用的路由规则 routes.MapRoute( //不确定参数个数的路由规则 name: "MyUrl", url: "{controller}/{action}/{*id}", //{*a}不确定个数的占位符 defaults: new { controller = "Home", action = "Index" } ); routes.MapRoute( //添加路由规则 name: "Default", //路由规则的名称 url: "{controller}/{action}/{id}", //路由规则的形式 {占位符}\分隔符 defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }, //当路径为空时填写时的默认值 constraints: new { id=@"\d{4}"} //为路由规则添加约束(id为四位数字) ); } } }