全局抑制整个解决方案(C#)

时间:2018-04-10 23:58:57

标签: c# code-analysis suppression

你们中的任何一个人都知道我能够抑制的方式,例如: CA2000是否有整个解决方案?

我正在考虑使用以下代码行的GlobalSuppressions类:

[assembly: SuppressMessage("Microsoft.Reliability", "CA2000:DisposeObjectsBeforeLosingScope")]

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

执行此操作的最佳方法是创建一个Directory.Build.props文件,该文件将自动包含在其所在子文件夹中的所有项目中。然后将以下内容添加到文件中:

<?xml version="1.0" encoding="utf-8" ?>
<Project>
  <!-- This file will be automatically included in all projects because of its name -->
  <PropertyGroup>
    <NoWarn>CA2000</NoWarn>
  </PropertyGroup>
</Project>

答案 1 :(得分:0)

可以在 .editorconfig file 中配置全局抑制。

  1. 在解决方案的根文件夹中创建一个名为 .editorconfig 的文件
  2. 在文本编辑器中打开
  3. 在第一行添加 root = true
  4. 在该行下方添加要禁用的规则
    [*.{cs,vb}]
    dotnet_diagnostic.<Rule_Code>.severity=silent
    

这是一个示例 .editorconfig 文件

root = true

[*.{cs,vb}]
dotnet_diagnostic.CA2000.severity=silent

[*.{cs,vb}]
dotnet_diagnostic.MA0004.severity=silent    # Even works with 3rd part rules/analyser