如何通过EditorConfig抑制外部文件的StyleCop SA1633规则?
解决方案:在EditorConfig中抑制外部文件的StyleCop警告
方法1:精准抑制所有AssemblyInfo.cs文件的SA1633规则
由于报错来自NuGet包中的AssemblyInfo.cs,可以用通配符匹配任意路径下的该文件,直接在项目根目录的.editorconfig中添加:
[**/AssemblyInfo.cs] dotnet_diagnostic.SA1633.severity = none
**/会递归匹配所有层级的目录,包括NuGet包所在的外部路径,确保所有AssemblyInfo.cs都跳过SA1633检查。
方法2:全局抑制外部NuGet包文件的所有分析器警告
如果想一次性屏蔽所有NuGet包中文件的警告,可通过路径通配符匹配整个NuGet缓存目录:
[file:C:/Users/**/.nuget/packages/**/*.cs] dotnet_analyzer_diagnostic.*.severity = none
- 用
file:前缀指定绝对路径匹配,**匹配任意层级目录 - 正斜杠无需转义,Windows系统下也能识别
dotnet_analyzer_diagnostic.*.severity = none会禁用该路径下所有分析器规则
方法3:让单个规则全局生效(覆盖所有文件)
如果希望SA1633规则在所有.cs文件(无论路径)中都被禁用,可在.editorconfig的[*.cs]块中添加is_global = true:
[*.cs] is_global = true dotnet_diagnostic.SA1633.severity = none
这个属性会强制该配置块的规则应用到所有.cs文件,包括项目外导入的文件,无需修改项目文件或使用ruleset。
内容的提问来源于stack exchange,提问作者itaiy
相关产品推荐
相关产品推荐

