【发布时间】:2017-04-29 22:30:59
【问题描述】:
我有问题! 我正在使用 Mvc5,并且我有这样的属性。
[DisplayFormat(DataFormatString = "{0:n2}", ApplyFormatInEditMode = true)]
public decimal Total { get; set; }
还有剃须刀:
@Html.EditorFor(modelItem => Model.Total, new { htmlAttributes = new { @class = "form-control input-sm" } })
此时没有错误。但如果我发送 1.300,40,我总是得到 0。
但是,如果我发送 1300,40,我会得到正确的值。 我该如何解决?我想得到正确的值,如果我发送 1300,50 或 1.300,40
【问题讨论】:
-
您能确认
.只是格式化千位分隔符,而,是十进制分隔符吗? -
是的,你是对的
-
我不想像这个函数一样在 onsubmit 之前使用 when 。 $(this).val($(this).val().replace(".", "")); );
-
延伸阅读:stackoverflow.com/questions/32236013/… 和 haacked.com/archive/2011/03/19/fixing-binding-to-decimals.aspx。基本上,模型绑定系统不支持开箱即用地格式化数千个分隔符。您可以应用自己的类型描述符和/或模型绑定器来处理这种情况。
-
非常感谢你! @ChadT
标签: c# asp.net asp.net-mvc string-formatting