0

Я работаю с несколькими языковыми сайтами. Я хочу получить и установить culture и uiculture с culturename без названия страны. Если браузер является английским или lang, английский выбирает, он вернет en не en-US или en-GB. Потому что я использую один файл localresources для каждого языка, и мне нужно отправить код языка в процедуру sql в качестве параметра.Asp.Net Название культуры без региона/названия страны и настроек по умолчанию

Thread.CurrentThread.CurrentCulture 
Thread.CurrentThread.CurrentCulture.Name 
Thread.CurrentThread.CurrentUICulture 

Все они возвращаются en-GB, de-DE, de-AT и т. Д. Я просто хочу первую часть и использовать ее. http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo%28VS.71%29.aspx Есть имя в ссылке, но браузер действительно возвращает его, я просто хочу и использую простую часть. Как я могу это сделать?

Решено (:

редактировать:. Теперь, как я могу прочитать культуру браузера, и если у меня нет его, как я могу установить культуру, которая у меня есть например: у меня есть en, de, ru и браузер посетителя сена мне fr, я хочу это показано ан

ответ

1

Посмотрите на TwoLetterISOLanguageName -свойстве он должен возвращать идентификатор, который вы ищете, например:?..

var cult = new System.Globalization.CultureInfo("en-US").TwoLetterISOLanguageName; 

Возвращает "en", чтобы вы могли отправить его в хранимые процедуры.

+0

спасибо, что это работает, и у меня есть новый вопрос – user3318568

+0

@ user3318568: По умолчанию культура браузера также должна быть установлена ​​в вашем приложении. Если вы хотите установить его по-другому, см. Http://msdn.microsoft.com/en-us/library/bz9tc508.aspx. – Markus

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