输入显示为空白而不是零
本文关键字:空白 显示 输入 | 更新日期: 2023-09-27 18:29:04
我有一个C#.NET MVC4应用程序。它有一个具有十进制属性的实体(在连接的MSSQL数据库中的某个位置):
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:.}")]
public decimal Fines { get; set; }
然后我把它显示为
@Html.EditorFor(model => model.Fines)
如果我将其保存为值1、2、3。。。然后打开记录进行编辑,文本输入值设置为保存的值,一切正常。但是,如果值为0,(它存储在数据库中,但)它不会在文本框中显示为"0"字符串,而是显示为空字符串",这会导致验证错误,因为这是必需字段(0是有效值)。
我做错了什么?
您的格式字符串有点奇怪。。我不确定你要用什么格式。试试这个:
DataFormatString = "{0}"
或者,如果你想将其格式化为货币,
DataFormatString = "{0:C}"
注意:刚刚测试了这个:
string.Format("{0:.}", (decimal)0)
它返回一个空字符串。
请参阅有关标准和自定义数字格式字符串的msdn页面。