从Visual Studio项目中删除项目中的所有未使用的引用
我只是想知道是否有可能在各种Visual Studio版本中自动删除从未被使用的项目的所有引用?
在你的答案中,请说明该解决scheme适用于哪个版本的VS。
如果安装了Resharper(插件),则可以访问允许通过“ 解决scheme资源pipe理器”>(右键单击)“引用”>“优化引用”来分析使用的引用的function。
http://www.jetbrains.com/resharper/webhelp/Refactorings__Remove_Unused_References.html
此function不能正确处理:
- dependency injection的程序集
- dynamic加载的程序集(Assembly.LoadFile)
- 通过互操作加载的本地代码程序集
- ActiveX控件(COM互操作)
- 其他创造性的方式加载程序集
你可以尝试免费VS2010扩展:由Lardite组的参考助手 。 这对我来说是完美的。 这个工具有助于查找未使用的引用,并允许select应删除的引用。
Resharper扩展将为您执行此操作。
此扩展支持Visual Studio 2005到2017。
虽然编译器不会包含未使用的程序集,但无关的使用语句和引用会降低Visual Studio和Intellisense的性能,因为工具必须考虑更多的代码。
在Visual Basic项目中,有支持删除“未使用的引用”(项目 – >引用 – >未使用的引用)。 在C#中没有这样的function。
在C#项目(不使用其他工具)中执行此操作的唯一方法是删除可能未使用的程序集,编译该项目并validation在编译过程中是否发生错误。 如果没有错误发生,你已经删除了一个未使用的程序集 ( 看我的文章 )
如果你想知道哪个项目(程序集)依赖于其他程序集,你可以使用NDepend 。
对于任何人来这里寻找Visual Studio 2012 :
下载并安装Visual Studio 11的Reference Assistant
以后你可以这样做:
您可以使用Visual Studio扩展库中的Reference Assistant扩展 。
用于Visual Studio 2010。
在Visual Studio 2013中,此扩展的工作原理是: ResolveUR
有人build议使用一个很棒的工具 – Visual Studio的Reference Assistant 。 问题是VS2012是最新支持的Visual Studio。 但是也有办法让它在VS2013中工作;)
这里是如何:
1)下载Lardite.RefAssistant.11.0.vsix
2)将扩展名更改为zip: Lardite.RefAssistant.11.0.vsix
– > Lardite.RefAssistant.11.0.zip
3)在文本编辑器中解压缩并打开extension.vsixmanifest
文件
4)findInstallationTarget Version="[11.0,12.0)"
,并将其replace为InstallationTarget Version="[11.0,12.0]"
(注意InstallationTarget Version="[11.0,12.0]"
括号)
5)保存文件并压缩所有文件,使其位于根邮编级别
6)将新zip
的扩展名更改为vsix
7)安装和享受:)
我已经用VS2013testing过了,感谢本教程的源代码
编辑添加到支持VS 2015社区版
<InstallationTarget Version="[14.0,15.0]" Id="Microsoft.VisualStudio.Community" />
括号的含义
[ – minimum version inclusive. ] – maximum version inclusive. ( – minimum version exclusive. ) – maximum version exclusive.
对于Visual Studio 2013/2015/2017,有一个扩展,它完全符合你的需求: ResolveUR 。 这基本上是这样做的:
- 项目中的参考被删除
- 项目是用msbuild编译的
- 检查构build错误
- 如果存在构build错误,请还原已移除的引用
使用DevExpress,我遵循这些指示:
- 在VS中,转到DevExpress – 编辑器 – 代码清理。 在规则下,选中“删除未使用的名称空间引用”。 点击OK。
- 右键单击解决scheme,然后select“代码清理”。 清理运行几分钟,并完成。
- build立你的应用程序
打开类文件(即cs)文件,并右键单击并select使用>删除未使用的使用组织。
在VB2008中,它的工作原理是这样的:
Project>Add References
然后点击最近的标签,你可以看到最近使用的参考列表。 find你不想要的,并删除它。 然后closures而不添加任何东西。
在Visual C#中删除引用在“解决scheme资源pipe理器”中,打开项目节点下的“引用”节点。 用鼠标右键单击引用,然后单击删除。