C#使用Statement和iDisposable

Dar*_*ung 2 c# idisposable

我刚刚发现最佳实践指示在任何类型实现iDisposable的地方,然后你应该将它包装在using语句中以确保对象被正确处理,即使在异常情况下也是如此.

我的问题是,你如何轻松地告诉哪些对象实现iDisposable?或者我应该在using语句中包装我不确定的所有内容,然后依赖编译器在编译时告诉我?

谢谢.

Col*_*inE 8

你可以 ...

  • 寻找Dispose成员的存在
  • 看看你的类型的定义(F12)
  • 按照您的建议进行操作,包装使用并查看编译器所说的内容

虽然,最好的方法是了解IDisposable的用途,但很快您就会了解实现此接口的类型.即外部资源,非托管类型包装器(例如GDI图形对象),有限资源(数据库连接)