Установить культуру из действий контроллера - PullRequest
0 голосов
/ 24 февраля 2019

Я пытаюсь создать CMS, для которой мне нужно установить информацию о культуре в зависимости от выбора языка для конкретной страницы.Единственный способ установить текущий язык - это:

System.Globalization.CultureInfo.CurrentCulture = new System.Globalization.CultureInfo("el-GR");
System.Globalization.CultureInfo.CurrentUICulture = new System.Globalization.CultureInfo("el-GR");

Я пытался использовать эти строки в следующих местах:

  • Действие: Этоне работает.По какой-то причине они не меняют Культуру.
  • Представление: Это меняет культуру, но мне придется попросить пользователя ввести эти строки в каждом представлении, которое он / она создает, котороене очень хорошая идея.
  • _Layout.cshtml: Не работает.

Лучшим решением моей проблемы было бы установить культуру в действии (у меня есть одно действие, которое обрабатывает все запросы CMS), но в случае, если это невозможно, было бы полезно найтиспособ установить культуру в файле _Layout.cshtml.

1 Ответ

0 голосов
/ 25 февраля 2019

Пожалуйста, проверьте эту ссылку Глобализация и локализация в ASP.NET Core .
Есть много способов сделать это

Реализация стратегии для выбора языка/ culture для каждого запроса

  1. Промежуточное программное обеспечение для локализации
  2. QueryStringRequestCultureProvider
  3. HTTP-заголовок Accept-Language
  4. Использовать пользовательский поставщик
...