ModelState:更多信息

时间:2014-07-16 15:28:04

标签: asp.net-mvc modelstate

我的ModelState.IsValid返回false,但我无法确定验证失败的原因。我没有关于视图模型的任何属性的数据注释,因此无法理解。

如何确定验证失败的原因?我想只有这样我才能弄清楚发生了什么。

2 个答案:

答案 0 :(得分:2)

除了数据注释之外,还可以通过简单的绑定问题引入错误:例如,一个值应该是一个数字,但其中包含字母。

ModelState.Errors property包含一组错误信息,您可以检查或迭代这些信息以发现哪些属性存在错误,以及为它们生成了哪些错误消息。

答案 1 :(得分:0)

您可以使用以下方式捕获错误:

foreach (ModelState modelState in ViewData.ModelState.Values) {
    foreach (ModelError error in modelState.Errors)
    {        
    // put debug point or add all the errors in collection or list  
    }
}