小编Sie*_*mos的帖子

CurrentCulture在ASP.net中错误地默认为en-US

我刚刚从Windows Sever 2003上的IIS 6迁移了大约100个ASP.net站点到Windows 2008上的IIS 7.我刚刚注意到使用DateTime.Parse之类的各种代码片段已经开始引发错误"字符串不是被认为是有效的DateTime".我已经跟踪了这一事实,即网站的CurrentCulture默认为"en-US",因此我的英国用户以意想不到的格式输入日期.

问题是,他们从哪里来到美国?从顶部开始,如果我查看"控制面板>区域和语言",一切都将设置为英语(英国).的网站的web.configs没有任一<全球化>部分或有它设置为<全球化文化="自动"的UICulture ="自动" />.在'IIS7 - .Net全球化'中,所有网站都将其文化设置为"不变语言(Invariant Country)".

我无法找到将文化设置为"en-US"的任何地方......但有些东西是.

Thread.CurrentThread.CurrentCulture.Name is outputting 'en-US'
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencySymbol is outputting '$'
Run Code Online (Sandbox Code Playgroud)

我可以通过在每个web.config中添加<globalization culture ="en-GB"uiCulture ="en-GB"/>来解决这个问题但是我真的不想手动编辑大约100个web.configs!我不想从服务器操作系统设置继承文化,这些设置设置为en-GB.

我错过了什么吗?

asp.net globalization culture uiculture

26
推荐指数
2
解决办法
4万
查看次数

标签 统计

asp.net ×1

culture ×1

globalization ×1

uiculture ×1