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/

10-17 01:02