我传递了一些值给我的控制器动作,并且一切都很好地绑定。设计中POST的表单中缺少两个属性。更新我的模型,然后重新评估IsValid?
然后我设置缺少的值,但然后我想验证模型,它仍然说false,因为它看起来像ModelState没有赶上我的更改。
[HttpPost, Authorize]
public ActionResult Thread(int id, string groupSlug, Comment comment, string submitButton)
{
comment.UserID = UserService.UID;
comment.IP = Request.UserHostAddress;
UpdateModel(comment); //throws invalidoperationexception
if (ModelState.IsValid) // returns false if i skip last line
{
//save and stuff
//redirect
}
//return view
}
什么是拍拍头上的ModelState中,并告诉它,一切都会好起来的,同时还确认其他一切从用户的POST
这回答了这个问题。不过,我认为我的架构是错误的。我已经回去并改变了模型 – BritishDeveloper 2011-01-05 16:10:18
似乎并不是ASP.NET Core 1.0.0中的解决方案 – 2016-08-23 23:29:24