c# - 如何识别 C# 项目中未使用的类

标签 c# visual-studio-2015

我有一个包含不同项目的 C# 大型解决方案。它还包含一个带有 Main 静态方法的批处理。 我必须从这个方法开始识别并删除所有不能使用的类。 哪种方法最好? 我正在使用 Microsoft Visual Studio Professional 2015

谢谢!

最佳答案

没有工具可以完全做到这一点,因为

  • System.Reflection 和 System.CodeDom 存在 - Is it possible to dynamically compile and execute C# code fragments?
  • 可以在运行时生成新的 C# 代码,它使用其他未使用的类。
  • 没有任何工具可以预测新的 C# 代码是什么(编写代码的人除外)
  • 依赖注入(inject)库(在幕后使用 System.Reflection)可以调用“未使用”的类。这种情况经常发生在 MVC Controller 类中。
  • Razor View 可以使用类。这些不是默认编译的。相反,如果缺少某个类,它们将在运行时崩溃。

假设没有人在使用 System.Reflection,您可以手动完成。

对于每个类(class):

  • 在 Visual Studio 中选择它,右键单击然后“查找所有引用”
  • 如果没有找到,将类注释掉/* */
  • 全部重建 ( including Razor views )。如果没有发现错误,则该类未被使用。

关于c# - 如何识别 C# 项目中未使用的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36625430/

相关文章:

c# - Try/Catch 没有捕捉到

c# - 如何找到字符串中的最后一个字母并获取其索引?

c# - Visual Studio 2015 : Debugger won't step over

git - vbcs.cache/edb.log 被 Visual Studio 2015 锁定

c++ - Visual-Studio,为所有人创建定义的现有方法?

c# - 使用 SMTP 发送电子邮件并控制发件人地址

c# - 减去 2 个日期时间字段以获得剩余天数

用于千点分隔符的 C# DataFormatString (Asp.net mvc)

c# - 提取内部 JSON 对象以进行单独解析

c++ - 多文件 <iostream> 错误 LNK2005 in VS2015 with/Za