我一直在本地开发 MVC 应用程序(IIS Express)并定期部署到 IIS 7.5 以进行测试。
我刚刚在我的 Global.asax.cs 文件中添加了一个名为 Route 的新名称:
routes.MapRoute(
"MyCustomRoute", // Route name
"{documentID}/{year}", // URL with parameters
new { controller = "Documents", action = "CurrentVersion", year = DateTime.Now.Year }, // Parameter defaults
new { documentID = @".*\d+.*" } // Regex matches only where documentID contains numerical values.
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Documents", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
我已经使用“MyCustomRoute”设置了一个 Html.RouteLink,并且在我的本地机器上运行良好。但是,当我在 Web 服务器上运行它时, Html.RouteLink 正在生成一个空链接。另外,如果我直接在浏览器中输入 URL,它会给出 404。
好像 Route 还没有注册。我错过了什么?