HTML.EditorFor有3个小数位

Jan*_*nik 9 c# asp.net-mvc editorfor

如何显示带小数点后3位的模型十进制字段.目前它将它缩短为2位数.

1,237目前将显示为1,24;)

Art*_*ess 13

您可以在View Model上使用Data Annotations,如下所示:

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

  • 是的,这将是正确的方法.您的模型属于您的应用程序的业务逻辑,而不是UI.让我们说明天您将决定制作一个移动应用程序,通过WebAPI与您的BL连接.将应用不同的UI规则,并且它们都不与您的实际数据相关.在您的问题中,您想要更改某些属性的**显示**,而不是您的实际数据.你的模型不应该意识到它.这就是虚拟机的用武之地. (2认同)
  • 好吧,你可以试试[Auto Mapper](http://www.codeproject.com/Articles/61629/AutoMapper).虽然分配VM - > Model值并不是那么糟糕,但说实话. (2认同)