Я пытаюсь предоставить пользователю возможность изменить язык пользовательского интерфейса моего веб-сайта asp.net mvc. Я планирую предложить 2 языка для пользователя, т.е.: английский и голландскийИспользование нескольких языков в asp.net mvc website
Для этого я редактировал свой файл web.config и добавил:
<globalization enableClientBasedCulture="true" culture="auto" uiCulture="auto"/>
Теперь я добавил 2 файлов Resources.resx
(файлов по умолчанию) и Resources.nl-NL.resx
(файл ресурсов для голландских).
Обращаюсь к файлу ресурсов с моего представления как <title>@WebApplication9.App_GlobalResources.Resources.RequestTitle</title>
.
Когда язык меняется, я меняюсь Культура как это:
Thread.CurrentThread.CurrentCulture = new CultureInfo("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
Но даже после изменения языка на голландский и изменять значение культуры для тех, что указан выше, английское значения из Resources.resx
является всегда показывать вместо того, чтобы получать значение от Resources.nl-NL.resx
.
Не могли бы вы помочь мне узнать, чего я здесь не хватает?
Просто догадка ... попробуйте переименовать файл ресурса в 'Resources.nl.resx ' –
@GeorgPatscheider: Я сам это пробовал, но не работал. – ViVi
Устранение неполадок начального уровня подтвердило, что при изменении языка в браузере язык пользовательского интерфейса меняется. Таким образом, проблема, очевидно, связана с «Thread.CurrentThread.CurrentCulture = new CultureInfo (« nl-NL »);» и/или «Thread.CurrentThread.CurrentUICulture = new CultureInfo (« nl-NL »);« Я думаю, – ViVi