在 MVC 5 中翻译路由 URL 名称
本文关键字:路由 URL 名称 翻译 MVC | 更新日期: 2023-09-27 18:32:05
我想像访问我的网站一样
http://example.com/en/category 或 http://example.com/pt/categoria 相同的操作。
您可以使用某种"语言"注册路由作为路径的第一部分,并将此类信息作为操作的参数进行处理。
routes.MapRoute(
name: "Category",
url: "{language}/Category",
defaults: new { controller = "Category", action = "Index" },
);
ActionResult Index(string language,...)
{
// set language based on Url
// i.e. if you are using "en-GB" as language (.Net culture names)
Thread.CurrentThread.CurrentCulture = new CultureInfo(language);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(language);
}
请注意,有很多方法可以重构此类代码以避免重复(即编写 ActionFilter 来执行此操作)。