已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。

2014/8/24 已被5553人阅读

当前位置:首页>新闻中心>技术关注【关闭】

当我们同时打开两个或循环嵌套多个SqlDataReader会出现以如题的错误。

错误分析:因为调用的是SqlDataReader做数据库的数据读取,第一次SqlConnection开启没有关闭。
上网查了一下,一个SqlConnection只能执行一次事务,每用一次必须关闭,然后再开启。上面我只用了一次没有关闭,直接开启所以会报错。其实不用多次打开在开启,那样实现起来很麻烦。
解决方法:直接在连接字符串的后面加上MultipleActiveResultSets=true即可。 如有配置文件直接修改配置文件即可。

示例如下:(背景处为新增代码)

MultipleActiveResultSets=true" providerName="System.Data.SqlClient" />


预约洽谈

多一份方案,多一个参考,预约我们的商务面对面沟通,总有益处 周一至周五,9:00-18:00    咨询热线:021-3100 6558 24小时热线:15900965330

我要预约
电话咨询 在线沟通 QQ咨询 微信聊天