在Visual Studio 2013年特典的引用数(方法,属性,字段...)可以通过代码镜头中。 我想不用的(零参考)代码在Visual Studio。 有没有什么办法让他们?
Answer 1:
也许是最好的和最简单的方式来实现你以后有什么是使用内置的代码分析工具与Visual Studio找到并直接带您到死代码和未使用成员。
为此,我只是创造了一个新的代码分析规则集文件(通过文件- >新建- >文件 ,确保通用在左窗格中选择和向下滚动找到代码分析规则集 ,给它一个文件名,然后搜索并选择以下规则)。 见下面的规则集文件,你可以简单地复制的内容粘贴到与扩展.ruleset使用一个新的文件。
给定一个规则集文件,可以右键单击在Solution Explorer面板项目文件,并选择属性 。 在项目属性窗口,单击左侧面板中的代码分析选项卡,然后单击打开浏览到.ruleset文件的位置。 如果你去到一个解决方案文件的属性(相对于项目文件),你可以设置在一个地方解决每个项目的代码分析文件( 代码分析设置下,使用下拉菜单有选择。规则集文件注意:您必须在之前已经浏览到的规则集文件为它在这个属性窗口的下拉但是显示出来)。
然后你只需运行的项目/解决方案(通过Analyze->运行代码分析在解决方案 -或Alt + F11)的代码分析,它会回来的警告,任何未引用的方法或发现未使用成员。 它甚至会发现,通过一种方法,就是本身没有其他地方引用引用的方法。
然而小心,因为死代码的方式代码分析,可以引导你错了,如果是在基准由以往仅通过调用委托方法“隐藏”,当然,反思。
该规则来检测死码,具体而言,主要有:
- 不是从任何其他代码调用私有方法(CA1811)
- 未使用的局部变量(CA1804)
- 未使用的私有字段(CA1823)
- 未使用的参数(CA1801)
- 未与任何其他代码(CA1812)实例内部类。
- 在按位或有限开关死代码(C6259)
下面是可以按照上面的步骤,您可以conveinence有该.ruleset文件的内容。 你可以简单地复制下面的XML,将其粘贴到记事本+ +,扩展.ruleset保存在某个地方,浏览和使用上面的解释:
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="Dead Code Rules" Description=" " ToolsVersion="12.0">
<Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
<Rule Id="CA1801" Action="Warning" />
<Rule Id="CA1804" Action="Warning" />
<Rule Id="CA1811" Action="Warning" />
<Rule Id="CA1812" Action="Warning" />
<Rule Id="CA1823" Action="Warning" />
</Rules>
<Rules AnalyzerId="Microsoft.Analyzers.NativeCodeAnalysis" RuleNamespace="Microsoft.Rules.Native">
<Rule Id="C6259" Action="Warning" />
</Rules>
</RuleSet>
希望这可以帮助你,不要忘记选择最佳答案。
Answer 2:
下面就来做到这一点,我已经用于发现标记为公众未使用的类手工方式。
- 搜索和替换所有的“公共课”与“私有类”在您的解决方案一个项目。 也可能需要更换“公共静态类”和/或“公共抽象类”。
- 构建找到所有的错误
- 对于构建的每个错误,用你的源代码控制要恢复的文件所引用的类。
- 重复每一个错误,直到生成成功。
- 尚未恢复的任何剩余的文件是去除可能的候选人。
- (可选)重命名类在上述文件和做一生成发现错误。
- 做你想要删除确认类的名称最后一个搜索有没有反射或弦魔术正在使用它的任何实例。
- 删除未使用的标识类文件。
- 重复您想要清除每个解决方案项目。
注意:如果你不按照每个文件规则一类,这将需要大量的工作。 此外,任何API服务端点,您需要验证它不使用任何外部项目。