如何找出未调用C#.NET程序集中的代码

时间:2011-03-17 01:47:04

标签: c# .net

我在Visual Studio 2008中有一个C#.NET程序集。如果需要,我可以将它升级到VS 2010。

如何查找程序集中的哪些代码未被调用?理想情况下,如果有东西可以一次性分析整个解决方案。对我来说,手动分析它本身太过分了。

程序集在客户端和服务器项目之间共享,因此我需要了解在哪里使用哪些代码。

6 个答案:

答案 0 :(得分:2)

在VS 2010中,您可以将code coverage与单元测试一起使用 - 因此,如果您可以将客户端代码重构为实际的单元测试,则可以使用它。

引用MSDN

  

确定你的比例   项目的代码实际上是   使用单元测试测试,你可以使用   Visual的代码覆盖功能   Studio应用程序生命周期   管理。要执行此操作,请先编辑   运行配置以指示   包含其代码的程序集   您想要衡量的覆盖范围。然后跑   测试该代码。详细代码   覆盖率统计数据出现在   窗口,你也可以看到,   逐行,代码一直是   测试

答案 1 :(得分:1)

尝试获得resharper。这样做对你而言。您可以从他们的网站获得免费试用版。 http://www.jetbrains.com/resharper/download/

答案 2 :(得分:1)

http://www.jetbrains.com/resharper/

如果您不介意购买某些东西,ReSharper会为您找到未使用的代码。

答案 3 :(得分:1)

FxCOP是Microsoft的免费工具,包括死代码检测。

对于最佳结果,不要将类/方法标记为公开,除非它们确实需要公开。它假定外部程序集使用任何公共方法。

答案 4 :(得分:1)

在Visual Studio中检查Code Analysishelp here

答案 5 :(得分:1)

您可以尝试ReSharper的safe delete功能,请记住它会说删除仅通过反射使用的代码是安全的(例如Fluent自动化约定)。

下载30天的试用版,看看它是否能满足您的需求,也不会受到伤害。