网站出现"已有打开的与此命令相关联的 DataReader,必须首先将它关闭。"的解决方案
来源:互联网 发布:淘宝上如何找牙签弩 编辑:程序博客网 时间:2024/06/16 14:36
解决方案有两种:
1、数据库为SQL Server 2005版本时,可以在web.config数据库链接串中加入MultipleActiveResultSets=true。
2、进行重复操作之前,将数据查询结果放入内存中,再进行使用。
我的web.config数据库链接串中原来是有MultipleActiveResultSets=true的,但是开发是的服务器是sql2005,部署的服务器是sql2000,因此才出现了问题。
因此只能用第二种解决方案,修改源代码。
由
var contacts = from c in db.Contactselect c;foreach (Contact c in contacts){if (c.Phones.IsLoaded == false)c.Phones.Load();if (c.Phones.Count > 0){Console.WriteLine(c.LastName);foreach (ContactPhone p in c.Phones){Console.WriteLine("\t"+p.ContactPhoneId);}}}
改成
var contacts = from c in db.Contactselect c;List<Connect> results = contacts.ToList();foreach (Contact c in results){if (c.Phones.IsLoaded == false)c.Phones.Load();if (c.Phones.Count > 0){Console.WriteLine(c.LastName);foreach (ContactPhone p in c.Phones){Console.WriteLine("\t"+p.ContactPhoneId);}}}
- 网站出现"已有打开的与此命令相关联的 DataReader,必须首先将它关闭。"的解决方案
- 解决方案之"已有打开的与此命令相关联的 DataReader,必须首先将它关闭"
- 如何解决“已有打开的与此命令相关联的 DataReader,必须首先将它关闭。”
- 已有打开的与此命令相关联的 DataReader,必须首先将它关闭
- 如何解决“已有打开的与此命令相关联的 DataReader,必须首先将它关闭。”
- 已有打开的与此命令相关联的 DataReader,必须首先将它关闭
- "已有打开的与此命令相关联的DataReader,必须首先将它关闭"问题解决
- 如何解决“已有打开的与此命令相关联的 DataReader,必须首先将它关闭。”
- “已有打开的与此命令相关联的 DataReader,必须首先将它关闭 ”错误解决方法
- 已有打开的与此命令相关联的 DataReader,必须首先将它关闭。
- 已有打开的与此命令相关联的 DataReader,必须首先将它关闭
- "已有打开的与此命令相关联的DataReader,必须首先将它关闭"问题解决
- “已有打开的与此命令相关联的 DataReader,必须首先将它关闭。"问题.
- 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
- 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
- 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
- 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭
- 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
- android学习---- WindowManager.LayoutParams
- JMS 消息持久订阅者测试
- VS2008快捷键大全
- linux下echo命令详解
- php对大文件进行读取操作 转载
- 网站出现"已有打开的与此命令相关联的 DataReader,必须首先将它关闭。"的解决方案
- Java面试--io
- Expression Tree Visualizer的使用
- Android的monkey测试
- 什么吃掉了我的硬盘?
- kvm-libvirt的使用:创建虚拟机与快照
- poj水题
- 五种非线性滤波
- Win32线程之杀死C++对象