【问题标题】:How to supress StyleCop warning "SA1201: All methods must be placed after all properties."? [duplicate]如何抑制 StyleCop 警告“SA1201:所有方法必须放在所有属性之后。”? [复制]
【发布时间】:2011-03-18 07:23:09
【问题描述】:

可能重复:
How to suppress a StyleCop warning?

我正在编写一组混合私有/公共的方法,需要放入同一个区域(使用#region)。我使用了here 中提到的方法,但我无法抑制此警告。请帮忙。

[编辑] 我只需要抑制这个特定的警告——而不是整个项目/解决方案。但我愿意知道如何做到这一点^_^

【问题讨论】:

    标签: c# visual-studio-2010 stylecop


    【解决方案1】:

    您愿意为整个项目禁用该规则吗?如果是这样,看看这是否适合你:Enabling or Disabling StyleCop Rules

    【讨论】:

      【解决方案2】:

      抑制 stylecop 警告的另一种方法是更好地使用它们。有一条规则会坚持不使用区域(默认情况下禁用)。如果不这样做,您的问题就会消失。

      不要使用区域,而是使用部分类。将您的区域提取到新的部分类中。

      通过这种方式,您可以获得 stylecop 合规性和代码功能分离。两全其美。

      【讨论】:

        【解决方案3】:

        在您的情况下,正确的 SuppressMessage 属性应如下所示:

        [SuppressMessage("StyleCop.CSharp.OrderingRules", "SA1202:ElementsMustBeOrderedByAccess")]
        private void SomeMethod()
        {
        }
        

        请注意,您可以将它放在任何其他元素上(例如,放在类上 - 然后整个类中所有类似的违规行为都将被禁止)。

        我也同意在这些字段中写什么是相当不明显的。

        实际上,第一个应该是StyleCop 分析器类 的完全限定名,可以从源代码中找到(例如来自here)。 第二个应该以 rule code 开头,然后是冒号和 rule enumeration 的名称(幸运的是,它总是看起来像设置编辑器中显示的规则名称,但带有没有空格)。

        【讨论】:

          猜你喜欢
          • 2011-03-18
          • 2012-11-11
          • 1970-01-01
          • 2015-04-20
          • 2011-01-04
          • 2021-12-23
          • 1970-01-01
          • 2020-12-26
          相关资源
          最近更新 更多