错误信息:
System.Data.Entity.Core.EntityCommandExecutionException:“An error occurred while executing the command definition. See the inner exception for details.”内部异常:InvalidOperationException: 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
原因分析:
dbcontext正处于一个foreach遍历过程中时,又执行其他CRUD操作。
解决办法:
1、dbcontext在foreach遍历过程结束后,再执行其他CRUD操作。
2、使用不同的dbcontext,分别处理不同的CRUD操作。
3、将前一个DbContext的查询结果进行缓存,如 ToList()操作。

博客介绍了Entity Framework的错误信息,即执行命令定义时出错,内部异常显示已有打开的DataReader需先关闭。原因是dbcontext在foreach遍历中又执行其他CRUD操作。给出解决办法,如遍历结束后操作、用不同dbcontext处理、缓存查询结果。
8736

被折叠的 条评论
为什么被折叠?



