在EF框架中新增或者修改实体时有些必填字段没填的话会报以下错误:
Validation failed for one or more entities. See 'EntityValidationErrors' property for more details.
一个或多个实体的验证失败。有关详细信息,请参阅“EntityValidationErrors”属性。
因为有些表的字段太多,不好一个一个去找,就可以用下面的这个方法,在SaveChanges时捕获异常,然后查看哪个字段没有赋值
try
{
this.Context.SaveChanges();
}
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)
{
foreach (System.Data.Entity.Validation.DbEntityValidationResult item in dbEx.EntityValidationErrors)
{
foreach (var error in item.ValidationErrors)
{
//提示消息
string message = error.ErrorMessage;
//报错字段
string field = error.PropertyName;
}
}
throw dbEx;
}