系统最近总是不定时的出现:Invalid attempt to Read when reader is closed 和 The connection is closed 这两个错误。下面是报错的代码。
public DataSet SelectDataBySQL(string sql) { OracleConnection conn = RedOralceDbPool.GetConnection(); OracleDataAdapter da = new OracleDataAdapter(sql, conn); DataSet ds = new DataSet(); try { this.Open(conn); da.Fill(ds); } catch (OracleException ex) { logger.Error(ex.Message); } finally { this.Close(conn); } return ds; }
2 回答
森林海
TA贡献2011条经验 获得超2个赞
我不知道DataAdapter在底层是否采用DataReader来实现的。
但是你这个错误通常会出现在使用DataReader读取数据的过程中,Connection实例被关闭而造成的。
繁华开满天机
TA贡献1816条经验 获得超4个赞
我啊.net的Winform程序中访问Access数据库时出错的,同样的这个错误。但测试debug下没有这个情况,在Publish发布后测试人员测试到了,怀疑是数据库访问的频繁问题。网上也有人说是用static变量没释放,我只用了int static idx=1;生成文件时递增,但貌似不应是这个原因,网上有人把static去除了也是一样的问题。不知是不是很多用户同时访问数据库导致的。待解决~~
- 2 回答
- 0 关注
- 1160 浏览
添加回答
举报
0/150
提交
取消