我知道将 IDbConnection 对象包装在 using block 中可确保调用 Dispose 并释放它正在使用的资源。话虽如此,我是否还需要将 IDbCommand 和 IDataReader 包装在 using block 中,或者只是包装连接对象就足够了。谢谢。
最佳答案
有许多简单的方法可以在不查阅文档的情况下为任何给定对象计算出此问题的答案:
- 如果您将它包装在
using
block 中并且它不是IDisposable
,您将收到语法错误。 - 如果您的类有一个
.Dispose
方法(在 Intellisense 中很容易检查),那么您应该包装它。 - 如果您的类实现了
IDisposable
(通过“转到定义”或 VS 中新的“查看”功能轻松检查),您应该将其包装起来。
或者,作为示例,您可以从 MSDN docs 中看到IDbCommand
实现了 IDisposable
,因此应该用 using
block 处理。
关于c# - IDbConnection 和在 c# 中使用 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21437340/