ASP.Net:为string.Format()设置正确的货币设置

时间:2011-01-09 02:31:15

标签: c# asp.net string-formatting currency culture

在我使用的ASP.Net网站

String.Format("{0:C}", param)  

格式化货币值。在我的本地计算机上,这很好用,但在将网站部署到服务器时,输出从€切换到$。

显然,服务器具有不同的文化设置,是否有一种简单的方法来更改此应用程序? (无法直接访问服务器设置)

我可以更改web.config条目吗?

2 个答案:

答案 0 :(得分:5)

您可以在web.config中执行此操作

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

在ASP.NET网页中,您可以设置两个文化值,即Culture和UICulture属性。 “文化”值确定文化相关函数的结果,例如日期,数字和货币格式等。 UICulture值确定为页面加载的资源。

实施例

<globalization uiCulture="es" culture="es-MX" />

答案 1 :(得分:1)

        var culture = new CultureInfo("en-us");
        culture.NumberFormat.CurrencyDecimalDigits = 3;
        Trace.WriteLine(Cost.ToString("c", culture));