Проблемы с интернационализацией с использованием фильтра MVC

У меня есть приложение .NET 4.5.2 с локализованными файлами ресурсов (Messages.resx (для pt), Messages.es.resx и Messages.en.resx).

Фильтр MVC устанавливает культуру потока на основе языка клиента.

Я опубликовал на ферме с 3 серверами, и некоторое время все работало нормально, и вдруг началось следующее поведение:

  • Один из серверов стал отвечать на запросы с культурой pt английскими сообщениями.
  • Кроме того, сообщения, которые не переведены на английский язык и находятся только в файле Messages.resx, возвращаются пустыми.
  • Если язык клиента - es, сервер возвращает сообщения на испанском языке.

Мы сменили серверы фермы, и это произошло на 4 разных серверах.

Я попытался включить [assembly: NeutralResourcesLanguage("pt")] в AssemblyInfo, но проблема все еще возникает.

Может ли кто-нибудь помочь мне решить эту проблему?


person Leandro Lima    schedule 28.11.2017    source источник


Ответы (1)


«Фильтр MVC устанавливает культуру потока на основе языка клиента».

Почему? IIS может сделать это автоматически. Использовать:

<globalization uiCulture="auto" culture="auto" />

в разделе system.web вашего web.config

person bedane    schedule 28.11.2017