2016-10-25 4 views
5

У меня есть это веб-приложение ASP.NET, которое я разрабатываю с помощью Visual Studio 2015 и .NET 4.6.1. Я широко использую локальные и глобальные ресурсы для локализации моего приложения на английском (по умолчанию), испанском и галисийском языках. На моей машине разработки, которая использует IIS Express, все работает нормально. Но когда я публикую веб-приложение на нашем производственном сервере, который использует IIS 7 в Windows Server 2008, испанский глобальный ресурс игнорируется, и используются только английский язык по умолчанию, а также галисийский.Глобальные ресурсы для дополнительных культур игнорируются в веб-приложении ASP.NET

Я публикую веб-приложение через метод «файловой системы» веб-публикации. Насколько я вижу, файлы .resx развертываются для глобальных ресурсов; вместо этого файлы с именем App_GlobalResources.resources.dll развертываются в папках bin, bin/es и . Кроме того, файл MyNamespace.resources.dll развернут до bin/es, но не bin/gl, что очень странно.

Я должен также сказать, что я переключение культур в моем коде, установив Thread.CurrentThread.CurrentUICulture к CultureInfo объекта на основе либо en-GB, es-ES или gl-ES.

Я попытался назвать глобальные файлы ресурсов в своем коде, используя нейтральные (например, gl) и локализованные (например, gl-ES) формы кодов культуры. Это, похоже, не имеет никакого значения. Кроме того, файлы локальных ресурсов называются с использованием нейтральных вариантов.

Любые идеи, почему испанский глобальные ресурсы игнорируются? Благодарю.

ответ

4

Правильное использование файлов ресурсов должно работать, например. Пробовали ли вы именовать файлы, используя полную спецификацию культуры, например. ResourceTexts.resx, ResourceTexts.es-ES.resx и ResourceTexts.gl-ES.resx. После публикации они должны быть доступны в папке App_GlobalResources.

+0

Должен ли я использовать суффикс культуры также для английского языка, который является стандартным? Обычно я оставляю его как ResourceTexts.resx без квалификатора. – CesarGon

+0

Кроме того, следует ли также называть локальные ресурсы полной спецификацией культуры, предлагаемой для глобальных ресурсов? – CesarGon

+0

Я только что пытался сделать то, что вы предлагаете, и ничего не меняется. :-(Кроме того, папка 'App_GlobalResources' не существует на моем сервере. Как я объясняю в своем OP, DLL развертываются в подкаталоги под' bin'. – CesarGon

Смежные вопросы