2

我一直试图压制一些 StyleCop 警告,但我没有任何运气。这是一些可能有用的信息。

  • StyleCop 版本:4.4.0.9
  • 要抑制的警告:SA1600、SA1633、SA1634

我试过的

  • 局部压制
  • GlobalSupressions.cs 文件
  • 项目级 .StyleCop 文件抑制
  • 解决方案级别 .StyleCop 文件抑制
  • 上述两者同时
  • 解决方案级别 .StyleCop 文件与项目级别 .StyleCop 文件的合并
  • 与父文件合并并删除项目级别的 .StyleCop 文件
  • 抬起一条腿,一只手放在脑后,闭上一只眼睛,重新构建解决方案……

无论如何,我已经没有办法压制这些消息了,我希望有人能提供帮助!

局部抑制示例

[SuppressMessage("Microsoft.StyleCop.CSharp.DocumentationRules", "SA1600:ElementsMustBeDocumented", Justification = "Reviewed. Suppression is OK here.")]

全局抑制示例

[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.StyleCop.CSharp.DocumentationRules", "SA1600:ElementsMustBeDocumented", Justification = "Reviewed. Suppression is OK here.")]
4

1 回答 1

1

好的,所以我找到了问题所在。在我的开发盒上,我安装了两个版本的 ReSharper,其中一个不受 StyleCop 支持。每次我升级 StyleCop 时,它都会警告我,但表示我可以继续。有趣的是,缺乏对一个版本的支持会影响对另一个完全支持的版本的支持。

所以,我做的是这个。

  1. 卸载不受支持的 ReSharper 版本。
  2. 挖掘注册表,删除我能找到的那个版本的 ReSharper 的每个条目,以便安装程序看到它已经消失了。这是一个有趣的过程,因为卸载不受支持的版本确实不能很好地清理自身——尽管我想这应该不足为奇。

第二个选项确实是一个错误的尝试 - 我会删除一些条目并运行安装程序,看看它是否抛出了警告 - 一旦警告不再显示,我继续安装,我现在可以抑制类级别的文档规则!

非常感谢(不是)StyleCop 允许不受支持的 ReSharper 版本破坏受支持的版本 - 这很有帮助 - 虽然比听起来要少!

于 2012-07-09T11:40:27.103 回答