我正在开发ASP.NET MVC 4应用程序,但我仍然是MVC的新手。当我使用Html.TextBox时,我注意到视图呈现额外的小数位,如下所示。

    @Html.TextBox("OriginalContractAmt", Model == null ? 0 : Model.OriginalContractAmt, new { @readonly = true })


OriginalContractAmt属性是模型中的NotMapped字段,并且视图将值显示为479.4000。

我想将其强制为两位小数。即479.40。如何存档?在模型中尝试以下操作,但没有任何区别。

    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:0.0#}")]


提前致谢!

最佳答案

您可以使用Math.Round()将数字四舍五入到小数点后两位。

喜欢:

@Html.TextBox("OriginalContractAmt", Model == null ? 0 : Math.Round(Model.OriginalContractAmt,2), new { @readonly = true })


如果您不希望向上舍入或向下舍入,则可以使用截断(由Hans Passant在此处进行计算):

Truncate Two decimal places without rounding

09-27 01:11