[已解决问题] 关于 DataReader 封装的问题
提问时间: 2008-09-28 15:44
悬赏分:50 浏览:159 次

我想将 DataReader 封装入我的 DbHelper 类中,代码如下:

public OleDbDataReader GetDataReader(string cmdText)
{
OleDbCommand cmd
= new OleDbCommand(cmdText, dbConnection);
//using (dbConnection)
//{
if (dbConnection.State.Equals(ConnectionState.Closed)) dbConnection.Open();
OleDbDataReader rdr
= cmd.ExecuteReader();
rdr.Read();
if (rdr.HasRows())
{
return rdr;
}
else
{
return null;
}
//rdr.Close();
//dbConnection.Close();
//}
}

请注意我注销调的部分。
在返回rdrZ之前是不能关闭数据库连接的,但这样IIS进程是否会一直连着数据库,如果同时访问人数增加,会有什么影响?

提问者:burning - 初学一级
最佳答案

你应该使用ExecuteReader的重载方法,ExecuteReader(CommandBehavior.CloseConnection),此方法会在reader关闭之后自动关闭数据库连接

2008/9/28 15:46:36 回答者:Gray Zhang


提问者对于答案的评价:测试通过,谢谢
其它回答(1)

同楼上 !然后释放的时候直接调用 rdr.Close()


1个月前   回答者:Allie - 小虾三级
评论
1个月前   burning :
太神奇了
测试了一下,用 ExecuteReader(CommandBehavior.CloseConnection) 就能断开连接了。
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题



> 问题排行榜

相关内容

相关链接