我有一个方法,里面有一个try/catch/finaly块。在 try 块中,我声明SqlDataReader如下:
SqlDataReader aReader = null;
aReader = aCommand.ExecuteReader();
在该finally块中,手动处理的对象是在类级别设置的对象。那么实现的方法中的对象IDisposable,例如SqlDataReader上面的,它们会被自动处理吗?Close()在aReader执行 while 循环以获取阅读器的内容后调用(应该是Dispose()调用的内容Close())。如果没有调用Close(),当方法完成或对象超出范围时,该对象是否会自动关闭/处置?
编辑:我知道该using声明,但有些情况让我感到困惑。