В приложении Asp. Net 3.1 при запуске у меня для локализации указано следующее:
application.UseRequestLocalization(new RequestLocalizationOptions {
DefaultRequestCulture = new RequestCulture("pt"),
SupportedCultures = new[] { new CultureInfo("en"), new CultureInfo("pt") },
SupportedUICultures = new[] { new CultureInfo("en"), new CultureInfo("pt") }
});
application.UseEndpoints(x => {
x.MapDefaultControllerRoute();
});
Я использую маршрутизацию атрибутов на контроллерах:
[HttpGet("about")]
public IActionResult Index() => View();
Я могу просматривать содержимое в правильной культуре, используя:
/about?culture=pt
/about?culture=en
Но мне бы хотелось иметь культуру в качестве параметра маршрута, поэтому я обновил его до:
[HttpGet("{culture?}/about")]
public IActionResult Index() => View();
Однако, Когда я получаю доступ, культура не меняется:
/pt/about
/en/about
Как я могу это сделать?