我正在使用asp.net mvc 4并且在路由方面存在一些问题。
如何确保网站上通过网址等生成的所有路由均为小写?我设置了RouteTable.Routes.LowercaseUrls = true;
,但网址仍然以大写字母等生成。我错过了什么吗?
我想调整我的路线,以便我不再拥有/ Home / About / Index to / Home / About - 以便在生成路线时删除索引 - 如何做到这一点。
最后,这是我的路线配置。
RouteTable.Routes.MapRoute("MyRoute", "home/{action}",
new { controller = "About" });
答案 0 :(得分:1)
当我不在IIS中使用UrlRewrite处理小写路由时,我会使用类似的东西
安装此NuGet包:http://lowercaseroutesmvc.codeplex.com/
using LowercaseRoutesMVC
...
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRouteLowercase( // changed from routes.MapRoute
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
检查此SO帖子上接受的答案,描述UrlRewrite小写网址IIS URL rewrite module url's to lowercase