我只是想知道在各种Visual Studio版本中是否可能自动删除从未使用过的项目中的所有引用?
在你的回答中,请说明解决方案适用于VS的哪个版本。
我只是想知道在各种Visual Studio版本中是否可能自动删除从未使用过的项目中的所有引用?
在你的回答中,请说明解决方案适用于VS的哪个版本。
当前回答
如果你安装了Resharper(插件),你可以访问一个功能,允许你通过解决方案资源管理器>(右键单击)分析使用的引用>优化引用…
http://www.jetbrains.com/resharper/webhelp/Refactorings__Remove_Unused_References.html
此功能不能正确处理:
依赖注入程序集 动态加载程序集(Assembly.LoadFile) 通过互操作加载本机代码程序集 ActiveX控件(COM互操作) 加载程序集的其他创造性方法
其他回答
你只需要用石头和赤手空拳就能像穴居人一样。
删除未使用的名称空间(用于每个类) 运行调试构建 将可执行文件和其余名称空间引用复制到新位置 运行可执行文件 将出现缺失引用DLL错误 从调试文件夹中复制所需的DLL 重复4 - 6 咕咕嘎嘎? 扔你的石头
您还可以依靠您的构建工具来告诉您仍然需要哪些引用。这是VS 2017的时代,穴居人依然幸存。
使用DevExpress时,我遵循以下说明:
在VS中,进入DevExpress -编辑器-代码清理。在“规则”下,选中“删除未使用的命名空间引用”。单击OK。 右键单击解决方案,并选择“代码清理”。清理工作持续几分钟,然后结束。 构建应用程序
你可以试试Lardite group的免费VS2010扩展:Reference Assistant。它非常适合我。此工具有助于查找未使用的引用,并允许您选择应该删除哪些引用。
下面的方法不依赖于任何“附加组件”,也不是很痛苦。
遍历每个源文件并
全选(Ctrl-A) 切换大纲展开(Ctrl-M, M)。这将把文件缩减为两行。 点击命名空间的“+”。这将把文件的每个类显示为一行。扫描每个类的引用计数,寻找未引用的类。 单击每个类的“+”。这将把每个类函数显示为一行。扫描每个函数的引用计数,寻找未引用的函数。
扫描每个文件寻找“0 reference”只需要一秒钟。
扫描整个项目只需要几分钟。
在Visual Basic项目中,支持删除“未使用的引用”(project ->References- >Unused References)。在c#中没有这样的函数。
在c#项目(没有其他工具)中做到这一点的唯一方法是删除可能未使用的程序集,编译项目并验证在编译过程中是否出现任何错误。如果没有发生错误,则您已移除未使用的程序集。(见我的帖子)
如果你想知道哪个项目(程序集)依赖于其他程序集,你可以使用NDepend。