我的ModelState.IsValid返回false,但我无法确定验证失败的原因。我没有关于视图模型的任何属性的数据注释,因此无法理解。
如何确定验证失败的原因?我想只有这样我才能弄清楚发生了什么。
答案 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
}
}