有没有办法自动检查现有的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. System.ServiceModel.ServiceHost实现IDisposable,但Dispose未公开
- 3. IDisposable - 正确的方法实现(c#)
- 4. 如何正确处理SP对象,但未分配?
- 5. 正确处理SharePoint对象?
- 6. 如何正确检查和处理空值或对象
- 7. 如何正确处理重要的未经检查的异常
- 8. 正确的对象处理在C++/CLI
- 9. 泛型函数来处理处置IDisposable的对象
- 10. 正确处理大量对象集合
- 11. 如何正确处理对象
- 12. 实现了IDisposable
- 13. 实现IDisposable的C#
- 14. 如何正确处理对象(ASP.NET MVC +实体框架)
- 15. 在实现IDisposable时处理构造函数中的异常
- 16. 如何正确使用实现IDisposable的静态属性?
- 17. Password_verify未正确检查
- 18. 在没有使用语句的情况下处理IDisposable对象
- 19. 未处理JSON对象
- 20. 如何正确处理对象:注入还是拥有对象
- 21. 从组件派生并正确实现IDisposable
- 22. 未将对象引用设置为对象的实例。 [NullReferencceException了未处理]
- 23. 如何使用IDisposable处置对象
- 24. 在父类还实现IDisposable时在子类上实现IDisposable
- 25. 正确的方式来实现独立的Grails批处理?
- 26. 为类似AR查询实现查询对象的正确方法
- 27. 为WCF服务客户端实现IDisposable - 我正在做对吗?
- 28. 正确处理类似但不同类型的对象,如用户帐户
- 29. 如何确保在.NET中正确处理对象?
- 30. 对话框中的InputTextarea不应该处理,但它确实
我下载了VS2010 Premium的试用版,它确实有这个规则CA2000。谢谢。 – etoisarobot 2010-04-23 20:06:36