【发布时间】:2026-01-26 02:10:01
【问题描述】:
我目前允许选择列表的初始值为“”。用户可以选择是否填写此选项或保留默认值。
此 selectList 适用于 ID,其中 ID 传递给我的控制器。但是,由于未选择 int,ModelState 会导致 False,因为输入是空字符串而不是 int。
我想将此空字符串的值更改为 0。这将导致 ModelState 为 True。我一直在查看 ModelState 字典类,以便在检查 ModelState 之前更改键、值对。但是,我一直无法成功使用这个。
https://msdn.microsoft.com/en-us/library/system.web.mvc.modelstatedictionary(v=vs.118).aspx
任何帮助将不胜感激。
【问题讨论】:
-
你能不能像
public int?那样让int属性可以为空 -
你可以使用模型绑定器,你可以设置这个属性的默认值,你可以在生成视图之前添加一对带有
"" - 0对的值到集合中等等。问题是怎么做您创建了视图以及在那里传递的数据模型是什么样的?
标签: c# asp.net asp.net-mvc asp.net-mvc-4