我继承的典型查询执行模式是这样的:
using (IDataReader r = query.ExecuteReader())
{
while (r.Read())
{
// etc.
}
}
退出块后是否query.Connection
保持打开状态?using
我继承的典型查询执行模式是这样的:
using (IDataReader r = query.ExecuteReader())
{
while (r.Read())
{
// etc.
}
}
退出块后是否query.Connection
保持打开状态?using
ExecuteReader(CommandBehavior.CloseConnection)
close()
当数据读取器调用它的方法时,这将关闭连接(当dispose()
通过使用using
块调用方法时发生这种情况。
理想情况下,您也可以将using
块与您的SqlConnection
对象一起使用(或在块dispose()
内手动调用finally
),不仅要关闭连接,还要释放资源。
不; 在您释放连接之前,连接不会关闭。
但是,如果您通过CommandBehavior.CloseConnection
,连接将被关闭。