MVC Textbox不接受null为可空的int

时间:2012-09-27 13:21:11

标签: c# model-view-controller validation

模型

public int? SizeLength { get; set; }

查看

<div class="editor-field">
    @Html.TextBoxFor(p => p.SizeLength, new { @style = "Width: 75px" })
    @Html.ValidationMessageFor(p => p.SizeLength)
</div>

问题:

当我将该字段留空时,我得到“字段SizeLength必须是数字。”。将字段留空应该在返回的模型中转换为空值。当我的字段类型是可以为空的int时,为什么我会收到此消息?

1 个答案:

答案 0 :(得分:0)

尝试EditorFor,而不是TextBoxFor

不确定它是否可行,因为对象的内容(EditorFor或TextBoxFor)是一个空字符串,而不是null,因此您必须处理转换问题,可能会添加默认值。