我刚刚发现,最佳实践指示任何类型的实现iDisposable的位置,都应将其包装在using语句中,以确保即使在发生异常的情况下也可以正确处理该对象。

我的问题是,如何才能轻松分辨哪些对象实现了iDisposable?还是应该将我不确定的所有内容包装在using语句中,然后在编译时依靠编译器告诉我?

谢谢。

最佳答案

你可以 ...


寻找Dispose成员的存在
查看您的类型的定义(F12)
按照您的建议进行操作,包装一个using,然后查看编译器的内容


尽管最好的方法是了解IDisposable的用途,但是很快您将了解执行该接口并应该实现该接口的类型。即外部资源,非托管类型包装器(例如GDI图形对象),有限的资源(数据库连接)

关于c# - C#使用语句和iDisposable,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6096074/

10-12 12:37