如何更改.net Web应用程序中的默认文化设置?

我们的Web应用程序(.net / C#)使用amount.ToString(“c”)格式化货币金额,显示本地化到几个不同的地区。

我们法国的Candian用户更喜欢所有金额都是美国格式(123,456.99与fr-CA的默认窗口方式123 456,99)。

什么是最好的办法来处理呢? 我可以简单地修改每个networking服务器的窗口fr-ca的区域设置? 还是我需要创build一个自定义的文化?

Solutions Collecting From Web of "如何更改.net Web应用程序中的默认文化设置?"

您可能想要考虑创建一个自定义文化,提供您需要的格式化规则的组合。 MSDN上有一篇文章介绍如何做到这一点 。

总之,您创建了一个CultureAndRegionInfoBuilder对象,定义名称,设置属性并注册它。 检查文章的细节。

你可以像这样修改当前的文化:

 Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-CA") 

当然,你可以从web.config中提取值。

编辑:

好吧,对不起,我误解了。

这可能工作:

  decimal d = 1232343456.99M; CultureInfo USFormat = new CultureInfo("en-US"); Console.Out.WriteLine(d.ToString(USFormat)); 

这应该允许您在输出数字值时只使用USFormat。

我会为应用程序创建一个用户设置,这将为每个用户保存CultureInfo,并创建一个表单以允许每个用户编辑属性….