在使用EF更新实体的时候报错,显示界面如下:
点击查看详情:
在查看详细的窗体中,EntityValidationErrors里面的也看不到具体的错误原因。在网上找到一种解决的办法,使用DbEntityValidationException类,捕获这个异常,在这个异常的详细信息里面就可以看到具体的错误信息。添加代码如下:
在运行时,会捕获这个异常,然后从这个异常的详细信息中,可以看到具体的报错信息,如:
从这个里面,可以清晰的看到,错误的原因是一个Description字段不能为空。回去一检查,果然发现更新的时候,这个字段为空,但实际要求的是不为空。所以在这个地方只要给这个字段赋一个值,这个错误就解决了。以后碰到类似于这样的错误,都可以通过这个方法找到真正的错误原因。
参考网址:http://www.cnblogs.com/yhyjy/archive/2013/04/26/3044254.html