Как настроить инвариантную культуру в ASP.NET-глобализации?

17

Мне нужно исправить CurrentCulture как инвариантную культуру в приложении ASP.NET. Как я могу это сделать?

<configuration>
   <system.web>
      <globalization culture="???" />
   ...
    
задан Mike Chaliy 08.07.2009 в 21:24
источник

2 ответа

20

В соответствии с документацией CultureInfo , пустая строка указывает InvariantCulture.

Изменить (протестировано на .NET 3.5 sp1)
По умолчанию для культуры и UICulture установлено значение «» в файле web.config. Я думаю, что .Net просто делает свою собственную вещь и устанавливает их в «en-US» во время выполнения, хотя в документации говорится, что «en» - это инвариантная культура, а не «en-US».

Директива @Page может мешать вам. Если вы использовали инструмент «Создать локальные ресурсы» конструктора страниц, он автоматически добавляет к вашей странице директиву culture = «auto» uiculture = «auto» , которая переопределяет web.config. Если вы просто удалите тех, и кто-то использует этот инструмент позже, whammo, они вернутся, настроены на автоматическое, прослушивание вашего приложения. Если вы попытаетесь установить их в "", вы получите сообщение об ошибке.

Попробуйте установить для этого как web.config, так и директиву страницы и надейтесь на лучшее?

culture="en-US" uiCulture="en"
    
ответ дан Greg 08.07.2009 в 21:36
источник
22

Либо добавьте в файл web.config следующее:

<system.web>
    <globalization culture="en-US" uiCulture="en-US" />
</system.web>

или вы можете добавить это заявление на страницу:

<%@ Page uiCulture="en-US" culture="en-US" %>

Надеюсь, что это поможет.

    
ответ дан Shravan 05.01.2012 в 15:22
источник