有没有办法自动检查现有的C#源代码是否存在未正确处理的对象的实例。使用try/catch/finally还是使用语句? 或者我需要手动查看代码?检查实现IDisposable但未正确处理的对象
8
A
回答
3
看看VS2010的FxCop - 我相信他们恢复了DisposeObjectsBeforeLeavingScope规则 - 这可能正是你想要的。
1
的规则中使用FX警察检查了IDisposable被放置在适当的使用块...
您可以使用反光要经过的对象与IDisposable的
参考。 :Is there a list of common object that implement IDisposable for the using statement?额外的想法
HTH
0
CodeRush有一些支持明显这个变种。另一个可能的选择是(可能通过一个可选的编译符号)为你自己的对象添加一个终结器,并且如果它们没有被处置而终止(在Dispose
中设置一个布尔标志),则会大声抱怨。但是请注意:有一个终结器会改变对象的行为,所以不要将它放在生产代码中(或者甚至是常规的单元测试)。
相关问题
- 1. NUnit是否处理实现IDisposable的对象?
- 2. 处理全部实现IDisposable的嵌套对象
- 3. 为COM对象编写正确的IDisposable实现
- 4. IDisposable - 正确的方法实现(c#)
- 5. System.ServiceModel.ServiceHost实现IDisposable,但Dispose未公开
- 6. 如何正确处理SP对象,但未分配?
- 7. 在Singleton上实现IDisposable是否正确
- 8. 正确处理SharePoint对象?
- 9. 如何正确检查和处理空值或对象
- 10. 如何正确处理重要的未经检查的异常
- 11. 正确的对象处理在C++/CLI
- 12. C#中的IDisposable实现 - 是否可选处理注入的IDisposable OK?
- 13. 泛型函数来处理处置IDisposable的对象
- 14. 处置一个对象是否处理所有的IDisposable属性?
- 15. 实现了IDisposable
- 16. 正确处理大量对象集合
- 17. 正确处理领域对象删除
- 18. 正确处理绘制多个对象?
- 19. 如何正确处理对象
- 20. 如何正确处理SimpleRpcServer对象?
- 21. 实现IDisposable的C#
- 22. QTextBrowser未正确处理CSS
- 23. SASS未正确预处理
- 24. 在实现IDisposable时处理构造函数中的异常
- 25. 如何处理一个类没有实现IDisposable的属性?
- 26. IDbCommand是否在实现IDisposable的类中处理?
- 27. 如何正确处理对象(ASP.NET MVC +实体框架)
- 28. 在C#中实现IDisposable的正确方法是什么?
- 29. 如何正确使用实现IDisposable的静态属性?
- 30. 检查对象是否实现接口
我下载了VS2010 Premium的试用版,它确实有这个规则CA2000。谢谢。 – etoisarobot 2010-04-23 20:06:36