繁体   English   中英

从StyleCop分析中排除文件:忽略“自动生成”标记

[英]Exclude file from StyleCop analysis: “auto-generated” tag is ignored

在C#文件的开头,我添加了:

//-----------------------------------------------------------------------
// <copyright company="SomeCompany" file="MyFile.cs">
// Copyright © Some Company, 2011
// </copyright>
// <auto-generated />
//-----------------------------------------------------------------------

我希望StyleCop跳过检查这个文件,所以我使用了其他答案中解释的auto-generated技巧。

但是,在清理并重建我的解决方案后,StyleCop会不断为此文件生成警告。 为什么会这样? 怎么修好?

我使用的是Microsoft Visual Studio 2008专业版和StyleCop v4.3。

@Frédéric - 遗憾的是, Analyze generated files选项与使用<auto-generated />标签跳过文件无关联。

无论设置的值如何,始终会跳过包含<auto-generated />文本的文件。

@Daniel - 我相信你会处理一年多前发布的版本4.3中的错误,现在肯定已经过时了。 使用4.3的唯一原因仅在于您使用StyleCop 4.4不支持的Visual Studio 2005。

我强烈建议你升级到4.4 - 我刚检查了你的例子,它运行正常。

您可以在Settings.StyleCop文件中设置文件排除项。 该文件位于您的解决方案/项目或StyleCop安装目录中。

然后,您可以在Parser设置中使用正则表达式来定义要忽略的文件

<Parsers>
  <Parser ParserId="Microsoft.StyleCop.CSharp.CsParser">
    <ParserSettings>
      <BooleanProperty Name="AnalyzeDesignerFiles">False</BooleanProperty>
      <CollectionProperty Name="GeneratedFileFilters">
        <Value>\.g\.cs$</Value>
        <Value>\.generated\.cs$</Value>
        <Value>\.g\.i\.cs$</Value>
        <Value>codegen.*\.cs$</Value>
      </CollectionProperty>
    </ParserSettings>
  </Parser>
</Parsers>

在这种情况下,我想忽略codegen.whatever.cs

检查StyleCop文档 我最喜欢的是文档顶部的<auto-generated />标签,或者您可以使用#region指令或文档中提到的其他选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM