我从视图中接收模型。
一些值是自动填充的。
但是,需要手动添加一些必需的值,如下所示:
[HttpPost]
public ActionResult Foobar(FooModel model, FormCollection collection)
{
// "timePicker" is a dropdown list containing different times
var time = collection["timePicker"].Split(':');
model.Hours = int.Parse(time[0]);
model.Minutes = int.Parse(time[1]);
if (ModelState.IsValid)
{
... // Do stuff
}
}
所以问题来了:
ModelState.IsValid
是假的。
我调试了它,它声称model.Minutes
并model.Hours
没有分配给它。
...这不是真的,因为我刚刚为它们分配了值!
我考虑使用ModelState.Clear()
,但我不想手动检查所有其余信息是否有效。
有没有其他方法可以解决这个问题?