我有一个Silverlight项目,其中包含生成的Reference.cs文件,其中包含服务引用。该类归属于[GeneratedCode],在项目配置中,生成的代码的代码分析被禁用(发布和调试)。 / p>
我做错了什么?
答案 0 :(得分: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/