剃刀格式十进制?价值观

时间:2018-01-29 14:40:23

标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor

我目前正在使用ASP.NET MVC 4.6应用程序。我尝试将Decimal?属性格式化为正确的字符串格式。

我的财产看起来像这样:

public decimal? Amount{ get; set; }

数据库中的数据如下所示: 10000,99

我想要的输出实际上应该是:€10.001

没有小数值,不允许,(逗号)。

在我目前使用的Razor视图中:

@String.Format("{0:N0}", Model.Amount)

虽然我得到了这个结果,但效果还不错:€10 000 ,遗憾的是这是错误的。

你知道在ASP.NET MVC Razor中解决这个问题很热吗?期望的产出€10.001

谢谢!!!!

1 个答案:

答案 0 :(得分:1)

String.Format()有一个接受IFormatProvider的重载。只需在那里传递所需的数字格式:

var c = new System.Globalization.CultureInfo(""); // create InvariantCulture
c.NumberFormat.NumberGroupSeparator = ".";

var s = String.Format(c, "{0:N0}", 10000.99);