【问题标题】:Is there an easy way to find unused assembly references in my .NET project?有没有一种简单的方法可以在我的 .NET 项目中找到未使用的程序集引用?
【发布时间】:2009-10-08 16:31:59
【问题描述】:

可能重复:
Tools for finding unused references

我继承了一个棕地项目,并且正在重构代码以支持新的需求。随着时间的推移,程序集引用的数量已大大增加,我想知道是否不再使用任何引用。 除了删除引用并尝试重新编译代码之外,最好的方法是什么

【问题讨论】:

标签: c# .net visual-studio visual-studio-2008


【解决方案1】:

您可以使用Resharper by JetBrains 来做到这一点。

只需右键单击一个引用,然后选择“查找相关代码”。它将搜索项目并准确告诉您引用程序集的内容。

【讨论】:

  • 这是用于“普通”项目的方法,但是如果您在解决方案资源管理器中没有 References 文件夹,那么 Web 项目呢?
【解决方案2】:

我建议查看NDepend。它不仅让您了解哪些程序集引用了其他程序集,而且还提供了它们之间的依赖关系列表。

【讨论】:

  • 这在 NDepdend 的什么地方?我之前搜索过,但没有看到具体告诉您是否可以在 CQL 中指定对特定程序集的依赖。
  • 您有多种选择来查看未使用的 asm 使用依赖关系图(查看哪个框没有传入箭头) 使用依赖关系矩阵(查看哪一行是空的) 使用 CQL: SELECT ASSEMBLIES WHERE AsmCa == 0 此查询将返回没有用户的程序集。顺便说一句,有很多程序集是一件坏事:codebetter.com/blogs/patricksmacchia/archive/2008/12/08/…
【解决方案3】:

Resharper 建议添加引用如果你使用了没有被引用的 dll 中的类,你可以删除所有引用并通过 resharper 重新添加它们

【讨论】:

    【解决方案4】:

    有趣的是,VB.NET 项目确实有一个选项可以做到这一点,而 C# 没有(我发现)。 Resharper 将允许您右键单击参考并“查找相关代码”。

    【讨论】:

      【解决方案5】:

      Peli's Assembly Graph 可以显示您的程序集依赖关系图。这是.NET Reflector 的免费插件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-04-26
        • 1970-01-01
        • 1970-01-01
        • 2019-03-19
        • 1970-01-01
        • 2021-11-11
        • 1970-01-01
        相关资源
        最近更新 更多