C# 带3位小数的HTML.EditorFor

C# 带3位小数的HTML.EditorFor,c#,asp.net-mvc,editorfor,C#,Asp.net Mvc,Editorfor,如何显示带3位小数的模型小数字段。目前它将其缩短为2位数 1237当前将显示为1,24;) 可以在视图模型上使用数据注释,如下所示: [DisplayFormat(DataFormatString = "{0:0.00}", ApplyFormatInEditMode = true)] public decimal Num { get; set; } 有没有一种方法可以在不更改模型的情况下执行此操作?您不应该在视图中使用您的模型。你应该改用ViewModels。是的,这是正确的方法。您的模型属

如何显示带3位小数的模型小数字段。目前它将其缩短为2位数


1237当前将显示为1,24;)

可以在视图模型上使用数据注释,如下所示:

[DisplayFormat(DataFormatString = "{0:0.00}", ApplyFormatInEditMode = true)]
public decimal Num { get; set; }

有没有一种方法可以在不更改模型的情况下执行此操作?您不应该在视图中使用您的模型。你应该改用ViewModels。是的,这是正确的方法。您的模型属于应用程序的业务逻辑,而不是UI。假设明天你将决定制作一款通过WebAPI与你的BL接口的移动应用程序。将应用不同的UI规则,它们都与实际数据无关。在您的问题中,您希望更改某些属性的显示,而不是实际数据。你的模特不应该意识到这一点。这就是虚拟机的用武之地。我的viewmodel看起来如何,这样我就不必将数据粘贴到业务逻辑模型中了?从普通模型或类似的模型中推导出来会有用吗?嗯,你可以试试。老实说,虽然分配VM->Model值并不是那么糟糕。