我有一个在英美ASP.NET服务器上运行的应用程序(Windows服务器和.NET Framework的英文版)。 我将全球化设置设置为:
<globalization culture="auto" uiCulture="auto" responseEncoding="utf-8"/>
适用于大多数应用程序。但是,我必须处理该应用程序中的货币交易,我需要提供0.00格式的数字(不是0,00)。 我们的大多数用户使用来自使用0,00的文化的应用程序。
我发现即使使用Decimal.ToString("0.00")
,法语浏览器上的小数仍然打印为0,00。
处理该问题的正确方法是什么?
我是否应该更改我需要处理数字的功能的当前文化,以便暂时将其设置为EN-US?
如果我使用Decimal.ToString("0.00", NumberFormatInfo.InvariantInfo)
?
谢谢!
答案 0 :(得分:2)
您可以通过设置更改大多数文化信息。您需要的具体设置是:
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalSeparator = "."
答案 1 :(得分:1)
改变每个变量的文化太痛苦了。 尝试使用Thread文化信息。类似的东西:
CultureInfo MyCulture = new CultureInfo("fr-FR");
Thread.CurrentThread.CurrentCulture = MyCulture;
您可以在global.asax,用户登录或母版页面级别设置此配置。
最佳