Существует два способа настройки UICulture веб-страницы asp.net.
Опция # 1 заключается в том, что веб-браузер может настроить культуру пользовательского интерфейса (авто), установив текущий язык в веб-браузере.В FireFox перейдите на вкладку «Содержимое» в «Параметры» и нажмите «Языки», затем добавьте французский язык и переместите его в начало списка.IE похож, у него есть кнопка Языки на страницах параметров, и вы добавляете французский язык и перемещаете его в верхнюю часть заказа.Чтобы ваша веб-страница поддерживала этот стиль автоматической настройки, вы должны установить «UICulture = auto» в прагме веб-страницы следующим образом: <% @ Page Language = "C #" AutoEventWireup = "true" <strong>UICulture = "auto" ... ... ...%> Если вы используете этот метод, он отобразит ваш язык по умолчанию для любых языков веб-браузера, которые он не понимает.Вам нужно только определить нейтральный к культуре ресурс, чтобы охватить все версии языка, или вы можете определить конкретные языки (fr-CA, es-mx и т. Д.), И он откроется в файле нейтрального языка (fr-fr)если конкретный язык не определен.MSDN имеет больше информации об автоматической культуре и о том, как добавить больше языков веб-браузера в IE: http://msdn.microsoft.com/en-us/library/fw69ke6f.aspx
Вариант № 2 - установить его в прагме веб-страницы на конкретный язык, например UICulture = "fr-FR ", или в файле web.config для всего сайта.
MSDN объясняет эти параметры в приведенной ниже ссылке и объясняет, как их можно настроить с помощью web.config для всех страниц вашего сайта.http://msdn.microsoft.com/en-us/library/bz9tc508.aspx
Используемый вами программный метод работает, но, как вы заметили, он работает только временно.Я использовал программный метод для чтения языка, указанного в строке запроса, и таким образом менял культуру.Вы можете реализовать HttpModule для проверки строки запроса и таким образом установить культуру для запроса текущей страницы.