格式化货币

时间:2010-11-26 06:45:57

标签: c# string currency-formatting

我想以销售价格显示$,为此我完成了

<asp:Label ID="lblpriceValue" runat="server" Text='<%#string.Format("{0:c}",Eval("product_price")) %>'/>

但这并未显示货币前的$或任何其他符号 所以对于临时我在标签之前添加了$符号,如

$<asp:Label ID="lblpriceValue" runat="server" Text='<%#string.Format("{0:c}",Eval("product_price")) %>'/>

但我知道这是错误的,因为我想根据国家设置货币符号。

我该怎么做。

3 个答案:

答案 0 :(得分:2)

yourMoneyType.ToString("c");

答案 1 :(得分:2)

如果您在某些数据绑定方案中需要它,那么它将是这样的:

<%# Eval("data_field", "{0:c}")%>

但是,您需要确保已在Web服务器的“控制”面板中设置了美国全球化设置(或您要显示符号的任何其他文化),或者您可以在web.config中指定它:

<globalization culture="en-US" uiCulture="en-US" />

否则,您将获得基于当前Web服务器区域设置的货币符号,例如£,¥等。

有关详细信息,请参阅here

答案 2 :(得分:0)

您可以使用CultureInfo.CreateSpecificCulture强制使用区域设置:

value.ToString("C", CultureInfo.CreateSpecificCulture("en-US")));
// Will display the $-sign...