gpt4 book ai didi

c# - ASP.NET MVC C# 显示格式问题

转载 作者:行者123 更新时间:2023-11-30 20:18:12 25 4
gpt4 key购买 nike

我要开门见山了。

我正在尝试将 Monthly Income 显示为仅保留 2 位小数。

我试过使用 DisplayFormat 但是当我将它添加到文本框时它不起作用。

型号

public class AgentModel
{

[Display(Name = "Monthly Income")]
[DisplayFormat(DataFormatString = "{0:0.00}", ApplyFormatInEditMode = true)]
public decimal MonthlyIncome { get; set; }
}

查看

//this input display the two decimal
@Html.EditorFor(m => m.MonthlyIncome, new { htmlAttributes = new { @class = "form-control" } })

//this one display 5 decimal
@Html.TextBoxFor(m => m.MonthlyIncome, new { @class = "form-control"})

我对这两个输入之间的区别感到困惑。我正在使用 DataFormat 因为我希望格式集中在我的模型上。并且不使用此代码 @string.Format("{0:N2}",decimal.Round(agent.MonthlyIncome, 2, MidpointRounding.AwayFromZero)) 来限制小数位。因为如果这是我所做的,我会在所有观点中这样做。

我也试过只输出月收入

的值
<td>@agent.MonthlyIncome</td>

这仍然返回 5 个小数位。

最佳答案

使用 TextBoxFor() 显示格式化值, 使用 this overload

@Html.TextBoxFor(m => m.MonthlyIncome, "{0:0.00}", new { @class = "form-control"})

第二个参数是格式字符串。请注意 DisplayFormatAttribute仅在使用 EditorFor() 时受到尊重或 DisplayFor()

另请注意 <td>@Html.DisplayFor(m => m.MonthlyIncome)</td>将以正确的格式呈现值。

关于c# - ASP.NET MVC C# 显示格式问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41950158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com