【发布时间】:2020-10-11 06:34:06
【问题描述】:
我的 ASP.NET MVC 5 项目是多语言的,我使用文化来更改语言。
我已经定义了带有文化的默认路由,如下所示:
public static void RegisterRoutes(RouteCollection routes)
{
var _cul = CultureHelper.GetCurrentCulture() != null
? CultureHelper.GetCurrentCulture()
: ConfigurationSettings.AppSettings["WebSiteDefaultCulture"];
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.MapRoute(
"Default",
"{culture}/{Controller}/{action}/{id}",
new {culture = _cul, controller = "Home", action = "Index", id = UrlParameter.Optional}
);
routes.MapRoute(
"Home",
"{culture}/Home/{action}/{id}",
new {action = "Index", id = UrlParameter.Optional}
);
}
所以网站所有页面的URL只会用文化打开。
我想打开一些没有文化的特定网站 URL。
例如,此 URL https://test.com/en-US/Cart/Cart/5 可以在不提供文化的情况下打开。
谢谢。
【问题讨论】:
标签: c# asp.net asp.net-mvc routes culture