Entity Framework "There is already an open DataReader associated with this 的解决办法

解决办法:

1,修改连接串,加上MultipleActiveResultSets=true

2, 一次性先把数据读出来

复制代码
var contacts = from c in db.Contact
                select c;

List results = contacts.ToList();

foreach (Contact c in results){
}
复制代码

提示:contacts.ToList() 的作用是强制加载contact列表,也就是先强制执行查询,再做后续处理。

一定要全部tolist不然上面查询结果不tolist循环里面tolist一样会出错,MS搞个鸡巴,弄个玩意这么难用

原文地址:https://www.cnblogs.com/wangchuang/p/4442614.html