【问题标题】:StyleCop SuppressionMessageStyleCop SuppressionMessage
【发布时间】:2011-05-07 04:09:21
【问题描述】:

如何对自定义规则使用抑制?

【问题讨论】:

  • 这不是与您创建自定义 StyleCop 规则的原因相反吗??
  • @Mitch:有时有些边缘情况很难在规则中适当处理。如果它们不够频繁,那么花时间使规则“更智能”可能不值得。在旨在供内部使用而非广泛公共部署的自定义规则中尤其如此。

标签: stylecop


【解决方案1】:

我利用 stylecop 忽略标题中带有“生成代码”的区域这一事实并执行以下操作:

#region Stylecop will ignore regions with "generated code" in title, like this.

//...code you don't want style cope to test code goes here

#endregion

【讨论】:

    【解决方案2】:

    您可以使用 SuppressMessageAttribute 以与作为 StyleCop 的一部分发布的规则完全相同的方式抑制自定义规则违规。例如:

    [SuppressMessage("Your.Analyzer.Namespace", "AA1000:RuleName")]
    

    (其中命名空间、规则 ID 和规则名称必须全部替换为规则的实际值)

    【讨论】:

    • 请注意,在我的例子中,我必须输入 分析器类的完全限定名称(派生自 StyleCop.SourceAnalyzer 的名称),而不仅仅是命名空间,并且该完全限定名称与 VisualStudio 在警告列表中显示的名称不同(它显示为 MyCustomRules.Custom,但分析器类的完全限定名称为 MyCustomRules.CustomRules)。
    猜你喜欢
    • 2011-01-23
    • 2013-03-15
    • 2012-03-07
    • 2010-12-25
    • 2010-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    相关资源
    最近更新 更多