HTTP GET 控制器操作和 ModelState.IsValid

HTTP GET controller actions and ModelState.IsValid

多年来我读过的关于 ASP.NET MVC 的几乎所有文献都将 ModelState.IsValid 描述为仅与 HTTP POST 操作方法一起发挥作用的东西。我知道这是约定,但假设 ModelState.IsValid 也被分配——并且应该在必要时检查——在涉及模型绑定的 HTTP GET 操作方法中。谁能证实这一点?

请读者注意,该问题与"updating"无关。

ModelState.IsValid 与验证属性并不严格相关。

对于正在寻找简单问题的简单答案的读者,我已经在调试器中确认它是 "yes" - ModelState.IsValid 设置为 GET 和 POST要求。因此,在这两种情况下都应该明确检查,因为在验证错误时不会抛出异常,例如将值“1,000”分配给小数?出现(见我上面的评论)。