问一个简单的问题啊。。

quicklyonline 2011-09-15 05:01:33
public static SqlDataReader QueryReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
//{
SqlCommand cmd = new SqlCommand(strSQL, connection);
try
{//执行数据库命令
DoConn(connection);
SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return myReader;
}
catch (Exception e)
{//处理异常
throw new Exception(e.Message);
}
finally
{//释放资源
cmd.Dispose();
//connection.Close();
}
//}

}



调用这个方法返回一个datareader

页面datareader.close()的时候,连接关闭了吗??

是不是真的关闭了啊?如何看啊?
...全文
132 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
在这里不是有吗,在这了加啊
public static SqlDataReader QueryReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
//{
SqlCommand cmd = new SqlCommand(strSQL, connection);
try
{//执行数据库命令
DoConn(connection);
SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
myReader.Read();
myReader.close();
if (connection != null)
MessageBox.Show(connection.State.ToString());
return myReader;
}
catch (Exception e)
{//处理异常
throw new Exception(e.Message);
}
finally
{//释放资源
cmd.Dispose();
//connection.Close();
}
//}





[Quote=引用 8 楼 quicklyonline 的回复:]
引用 7 楼 hhqsy 的回复:
如何看啊?
-----------------
你打出来看:
if (connection != null)
MessageBox.Show(connection.State.ToString());

//closed 关闭,open 打开


我的页面里没有CONNECTION啊,怎么打啊,在SQLHELPER里啊
[/Quote]
quicklyonline 2011-09-15
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hhqsy 的回复:]
如何看啊?
-----------------
你打出来看:
if (connection != null)
MessageBox.Show(connection.State.ToString());

//closed 关闭,open 打开
[/Quote]

我的页面里没有CONNECTION啊,怎么打啊,在SQLHELPER里啊
  • 打赏
  • 举报
回复
如何看啊?
-----------------
你打出来看:
if (connection != null)
MessageBox.Show(connection.State.ToString());

//closed 关闭,open 打开
quicklyonline 2011-09-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zxy900213 的回复:]
如果在这句之前发送了异常就关闭不了SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

如果没有发生异常就可以关闭...
[/Quote]

cmd.Dispose();

请问这个是在sqldatareader.close() 之后执行的吗?

ZXY900213 2011-09-15
  • 打赏
  • 举报
回复
如果在这句之前发送了异常就关闭不了SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

如果没有发生异常就可以关闭...
弦弦 2011-09-15
  • 打赏
  • 举报
回复
你把close注释了你说那执行吗?
quicklyonline 2011-09-15
  • 打赏
  • 举报
回复
可是我把connection.Close();注释了啊,有人回答吗
quicklyonline 2011-09-15
  • 打赏
  • 举报
回复
可是我把connection.Close();注释了啊,只加了一个CommandBehavior.CloseConnection

这个东西可靠吧???
fangyuantdy 2011-09-15
  • 打赏
  • 举报
回复
这个是引用传递,调用close肯定能关闭

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧