【发布时间】:2010-11-09 03:51:59
【问题描述】:
我需要将 CurrentCulture 修复为 ASP.NET 应用程序中的不变文化。我该怎么做?
<configuration>
<system.web>
<globalization culture="???" />
...
【问题讨论】:
标签: asp.net web-config globalization
我需要将 CurrentCulture 修复为 ASP.NET 应用程序中的不变文化。我该怎么做?
<configuration>
<system.web>
<globalization culture="???" />
...
【问题讨论】:
标签: asp.net web-config globalization
根据CultureInfo class documentation,空字符串指定InvariantCulture。
编辑(在 .NET 3.5 sp1 上测试)
默认情况下,文化和 UICulture 在 web.config 中设置为“”。我猜.Net只是做自己的事情,并在运行时将它们设置为“en-US”,即使文档说“en”是不变的文化,而不是“en-US”。
@Page 指令可能会干扰您。如果您使用页面设计器的“生成本地资源”工具,它会自动将 culture="auto" uiculture="auto" 添加到您的页面指令中,从而覆盖 web.config。如果您只是删除了这些并且稍后有人使用了该工具,whammo,他们会回来,设置为自动,从而破坏您的应用程序。如果您尝试将它们设置为“”,则会出现错误。
尝试将 web.config 和 page 指令都设置为此并希望获得最好的结果?
culture="en-US" uiCulture="en"
【讨论】:
将以下内容添加到您的 web.config 文件中:
<system.web>
<globalization culture="en-US" uiCulture="en-US" />
</system.web>
或者你可以在页面上添加这个语句:
<%@ Page uiCulture="en-US" culture="en-US" %>
希望这会有所帮助。
【讨论】:
en-US 文化,它不是 invariant culture。