我有一个Silverlight应用程序和相应的ASP.Net应用程序托管它。
我想使用检测到的区域性设置来格式化Silverlight应用程序中的日期,但我认为它没有正确地检测到系统设置(或者它使用了一些我不知道的设置来作为它们的基础)。
当我检查线程上的区域性值时(在ASP.Net应用程序和Silverlight中),CurrentCulture被正确地设置为en-GB,但CurrentUICulture是en-US。
我在Windows8上运行,位置和语言都设置为en-GB。
我已经使用Fiddler检查了浏览器设置,它将Accept-Language标头值作为en-GB发送。
这是我需要更改的web服务器上的某些设置吗?我使用的是Visual Studio的内置开发服务器。
发布于 2013-01-11 00:09:20
首先,我要澄清:
CurrentCulture用于数据格式、数字、货币等(不是实际语言)。CurrentUICulture是UI的语言。
您是否在线程中同时设置了CurrentUICulture和CurrentCulture?
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de-ch");
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("de-ch");发布于 2013-09-06 20:50:44
请参阅What is the difference between CurrentCulture and CurrentUICulture properties of CultureInfo in .NET?的nicodemus13注释
-请记住,微软,在他们的智慧中,不会将美国英语和(英国)英语或其他英语的UI文化分开。没有针对英语的MUI,这意味着无论CurrentCulture如何设置,在英语计算机上,CurrentUICulture始终是en-US。
可以设置为本地化区域设置。
https://stackoverflow.com/questions/14247184
复制相似问题