ModelState.IsValid 在我的 Controller 中为我返回 false。我知道这意味着在模型绑定(bind)时发现了一个或多个模型错误。我的问题是如何查看错误?
我注意到我的特定 ModelState 中有 6 个项目。如果我尝试做任何这些...
ModelState[0].Errors[0].ToString()
ModelState[0].Errors[0].ErrorMessage
ModelState[0].Value.AttemptedValue
我收到此错误:
The best overloaded method match for 'System.Web.Mvc.ModelStateDictionary.this[string]' has some invalid arguments
最佳答案
ModelState 的索引器是一个字符串(通常是违规模型的属性名称或 html 元素的名称)。
如果您查看 ModelState 类的 MSDN 文档,您会看到它有一个 Errors 集合,它允许您遍历错误项(它们是 ModelError 实例)以查看导致它们的原因。
关于ASP.NET MVC 模型状态,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1572289/