svi*_*gen 3 .net dispose idatareader
我继承的典型查询执行模式是这样的:
using (IDataReader r = query.ExecuteReader())
{
while (r.Read())
{
// etc.
}
}
Run Code Online (Sandbox Code Playgroud)
是query.Connection敞开的后using退出块?
ExecuteReader(CommandBehavior.CloseConnection)
Run Code Online (Sandbox Code Playgroud)
这将在datareader close()调用它的方法时关闭连接(当dispose()通过使用using块调用该方法时会发生这种情况.
理想情况下,您也可以using在SqlConnection对象中使用块(或dispose()在finally块内手动调用),不仅要关闭连接,还要释放资源.
| 归档时间: |
|
| 查看次数: |
1443 次 |
| 最近记录: |