如何抑制生成代码的代码分析?

Pro*_*bär 10 c# silverlight analysis visual-studio-2010

我有一个Silverlight项目,其中包含生成的Reference.cs文件,其中包含服务引用.该类归属于[GeneratedCode],在项目配置中,生成的代码的代码分析被禁用(发布和调试).

我做错了什么?

Jad*_*ias 14

也许您应该尝试适用于StyleCop的解决方案:

1)将".Designer.cs"放在您不希望StyleCop检查的文件名的末尾.或者调用类,以及包含它的文件"NativeMethods".确保在StyleCop设置中取消选中"分析设计器文件".在这种情况下,将绕过整个文件.您不必为某些类型的Microsoft设计器生成的代码(如Windows窗体设计器)执行此操作,因为它们自动属于以下选项的条件:

2)使用其名称中包含"生成代码"的C#区域包围不需要的代码段.默认情况下,StyleCop不会检查生成的代码(但请确保未选中"分析生成的文件"设置).在这种情况下,您仍然可以验证为Windows窗体控件生成的字段的名称.

#region Windows Form Designer generated code

...

#endregion

3)要忽略整个生成的文件,请检查您的生成器是否将""XML元素放入StyleCop-conform文件头中,如下所示:

// <auto-generated />

4)最后,您可以将MSBuild Compile项的"ExcludeFromSourceAnalysis"属性设置为true,该属性表示需要从分析中排除的文件.它仅在您使用提供的"Microsoft.SourceAnalysis.Targets"目标文件时才有效,否则您必须自己为所需的源文件提供StyleCop MSBuild任务.

资料来源:http://shishkin.wordpress.com/2008/07/08/stylecop-how-to-ignore-generated-code/

  • 代码分析(以前称为FxCop)与StyleCop不同,也许Cop的东西太混乱了 (4认同)