2010-06-10 4 views
1

У меня возникают проблемы с CultureInfo в нашем веб-приложении ASP.NET. Наше веб-приложение возвращает другую культуру, в зависимости от того, в каком пуле приложений она находится.Может ли CultureInfo.CurrentCulture отличаться для каждого пула приложений?

В пуле приложений A это en-US, но в пуле приложений B это nl-BE.

Я бы хотел, чтобы это было nl-BE, но не могу найти, где это изменить (IIS6 кстати). Я даже не уверен, что это можно изменить на уровне приложений.

Я проверяю с помощью CultureInfo.CurrentCulture.Name.

Можно ли изменить это для пула приложений? Или что еще может повлиять на это? В региональных настройках сервера мы выбрали «Голландский (Бельгия)», что, я считаю, переводит на nl-BE. Итак, где можно было бы получить этот пул приложений в США?

ответ

2

Да, это может быть иначе. Это свойство в потоке. Вы можете установить CurrentCulture для каждой темы отдельно.

Вы уверены, что вы не изменяете настройки где-то в коде? Является ли <globalization> setting идентичным для обоих тестов?

Если вы хотите, чтобы заставить определенную культуру, попробовать что-то вроде:

<globalization culture="en-US" uiCulture="en-US" /> 
+0

Но если я не установить его в любом месте кода, как я могу изменить его обратно? Или мне придется перерабатывать пул приложений? – Peter

+0

@Peter: добавьте тег глобализации, чтобы создать определенную культуру. Кстати, есть ли пул приложений совместно с другим приложением? –

+0

Это не совместное использование с другим приложением, но я не могу сказать, что у нас есть единственный контроль над сервером. Но утилизация пула приложений решила проблему. Как это стало en-US, это тайна, но спасибо, что указали на ответ. Я, кстати, пробовал тег глобализации в нашем web.config, но это не помогло. – Peter