What can cause ViewData.ModelState.IsValid to become false

后端 未结 2 1712
时光说笑
时光说笑 2020-12-14 02:35

There are times that I find my ModelState is invalid but can not find what has invalidated it since there are no ModelErrors. What is the easiest way to determine what has i

2条回答
  •  春和景丽
    2020-12-14 02:54

    Looking at the asp.net mvc source code, the IsValid property on the ModelStateDictionary is simply returning true or false depending on whether there are any errors in the ModelState ICollection held in the Values property.

    You should be able to find any errors including the message and exception like this:

    foreach(var modelStateValue in ViewData.ModelState.Values)
    {
        foreach(var error in modelStateValue.Errors)
        {
            // Do something useful with these properties
            var errorMessage = error.ErrorMessage;
            var exception = error.Exception;
        }
    }
    

提交回复
热议问题