В asp.net многоязычного сайте на английском языке Великобритании и шведской, у меня есть три rsources файлasp.net настройка культуры multiligual сайта
1. en-GB.resx
2. sv-SE.resx
3. Culture neutral file.
У меня есть создать один базовый класс и все страницы наследуются от этого класса. Там я пишу следующие строки, чтобы установить UICulture и культуру
1. Thread.CurrentThread.CurrentUICulture = CultureInfo.CurrentUICulture.Name;
2. Thread.CurrentThread.CurrentCulture = CultureInfo.CurrentCulture.Name;
Вопрос: Предположим, мой язык браузер Swedish (SV-SE), то этот код будет работать, потому что найти CurrentUICulture and CurrentCulture values as sv-SE.
Теперь, если предположим, что язык браузера шведка (УО), только в этом случае значений будет установлен в качестве
CurrentUICulture = sv; and CurrentCulture = sv-SE
Теперь проблема заключается в том, что пользователь может иметь возможность просматривать весь текст в культуре нейтрального файла ресурсов, который я держал в английском в то время как все десятичные saperators, валюта и другие появится в шведский. Это выглядит запутанным для usr.
Что было бы правильным подходом. Я думаю следующее решение. Пожалуйста, поправьте меня?
1. i can create extra resource file for sv also.
2. I check value of CurrentUICulture in base class and if it is sv then replace it with sv-SE
Пожалуйста, исправьте меня, какой из них правильный подход или есть ли другой хороший способ?
Думаю, нет необходимости также проверять. потому что уже у нас есть sv-SE с CultureInfo.CurrentCulture.Name; и я могу назначить это значение для обоих так: 1. Thread.CurrentThread.CurrentUICulture = CultureInfo.CurrentCulture.Name; 2. Thread.CurrentThread.CurrentCulture = CultureInfo.CurrentCulture.Name Что вы скажете? –
Вы можете определенно сделать это, если вам не нужно иметь номера в одной культуре и тексте в другом. – tzup