2

在我的应用程序中,某些字段包含十进制数字。并且可以只输入 2 个小数点。做一些计算后显示结果,答案也应该包含 2 个小数点。为此,我使用了以下代码:-

obj.Revenue = 0.00m;

obj.Revenue = Math.Round(Convert.ToDecimal(obj.Revenue), 2);

[编辑]

内景:-

@Html.TextBoxFor(model => model.Revenue, new { @id = "txtRevenue", @readonly = "readonly", @class = "decimalField" })

所以 300.00 应该显示为答案。但我得到了 300。我该如何解决这个问题?

4

5 回答 5

0

我知道回答这个问题为时已晚,但它可能对其他人有所帮助。

您可以在声明属性的模型中简单地写下这一行。[DisplayFormat(DataFormatString = "{0:0.###}")]

这是我在代码中使用的实际示例。

[DisplayFormat(DataFormatString = "{0:0.##}")]
    public Decimal CreditLimit { get; set; }

这会将您的值设置为小数点后两位。

例如 3.3333333 => 3.33

于 2014-12-02T11:23:09.600 回答
0

尝试这个:

@Html.TextBoxFor(model => model.Revenue, new {value = Model.Revenue.ToString("#.##"), @id = "txtRevenue", @readonly = "readonly", @class = "decimalField" })
于 2013-05-17T15:47:36.433 回答
0

使用 toFixed() 函数

例如:

(12.5).toFixed(2); // 12.50
于 2013-05-17T14:49:25.437 回答
0

您需要以这种方式为 model.Revenue 属性实现 get 访问器:

get{ return _revenue.ToString("#.##"); }
于 2013-05-17T15:52:28.183 回答
0

使用 toFixed(n);

var d = 300.00;
alert(d.toFixed(2));
于 2013-05-17T14:32:27.020 回答