货币显示为显示的欧元而不是usd

时间:2013-01-09 19:40:25

标签: asp.net-mvc

使用MVC 4 EF,我想显示美元货币值,但我没有“$”,而是获得了“EURO”simbol。如何使其始终显示为“$”

型号:

    [Display(Name = "PaidCompany")]
    [DataType(DataType.Currency)]
    [DisplayFormat(DataFormatString = "{0:C}", ApplyFormatInEditMode = true)]
    public Nullable<decimal> paidCompany { get; set; }

查看:

@Html.EditorFor(model => model.paidCompany, new Dictionary<string, object>() { { "class", "login_input" }, { "style", "width:250px;" } })

预期结果:“$ XX.XX” 实际结果:“XXX€”

问候,

1 个答案:

答案 0 :(得分:1)

System.Threading.Thread.CurrentThread.CurrentCulture属性设置为与欧元区中的国家/地区相关联的文化,而不是美国。默认情况下,将根据Windows中的区域设置填充此属性。您可以在global.asax文件或在请求启动时运行的其他全局代码中为其分配不同的区域性,或者您可以更改Windows区域设置。

编辑:

有关设置文化的选项的说明,请参阅此MSDN article

实现您想要的最简单方法可能是将以下行添加到web.config

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

请注意,UICulture用于您网站文本的语言,而文化涵盖所有其他方面,如日期和时间格式,货币符号等。