我们在 EF 的编程中,有时候会遇到这样一个错误:

 但是,按照他的提示 “See 'EntityValidationErrors' property for more details.” 去 Exception 中查看,却只能看到

并不能看到具体的是那个属性为什么验证不通过,也许不少人都遇到这种情况。

这里给大家介绍一个Exception类,让我们能够轻松的知道具体的哪一个字段出了什么问题。

那就是 System.Data.Entity.Validation.DbEntityValidationException,相信代码都知道怎么写了,最简单的就是

复制代码
try
{
// 写数据库
}
catch (DbEntityValidationException dbEx)
{

}
复制代码

在 dbEx 里面中我们就可以看到

这样子我们就能看到 EntityValidationErrors 所有的 ValidationErrors 的详细信息了。

 

 

解决办法是:

AsNoTracking().Single

 

 myContext.Busi_StandardItem.AsNoTracking().Single(p => p.ID == model.ID);

 

posted on 2012-11-06 16:33  Berthing  阅读(5692)  评论(3)    收藏  举报