Visual Studio 2017使用StyleCop Analyzers:能否仅保留SA160x禁用CS1591与SA0001?
解决方案:仅保留SA160x警告,禁用CS1591和SA0001
没问题,完全可以实现你的需求!下面是具体的配置步骤:
1. 必须开启XML文档文件生成
首先得保持「生成」选项卡里的「输出XML文档文件」勾选状态——这是让StyleCop Analyzers能对**所有文件(包括未打开的)**触发SA160x警告的前提,毕竟这类文档规则依赖XML文档的生成上下文才能完整分析。
2. 禁用VS自带的CS1591警告
CS1591是Visual Studio原生的XML文档缺失警告,我们可以通过两种方式关闭:
- 项目属性界面操作:打开项目属性 → 「生成」选项卡 → 在「取消显示警告」输入框中添加
1591(如果已有其他警告编号,用分号分隔) - 直接编辑.csproj文件(更推荐,配置更持久):在项目文件的
<PropertyGroup>节点中添加:<NoWarn>$(NoWarn);1591</NoWarn>
3. 禁用StyleCop的SA0001警告
SA0001是当未开启XML文档生成时,StyleCop抛出的规则检查初始化警告。现在我们已经开启了XML文档生成,它应该会自动消失,但为了彻底杜绝,可以通过以下方式禁用:
- 使用.editorconfig文件(推荐用于团队统一配置):在项目根目录的.editorconfig中添加一行:
dotnet_diagnostic.SA0001.severity = none - 编辑规则集文件:如果项目使用了自定义.ruleset文件,找到SA0001规则,将其严重性设置为「不显示」
- 修改.csproj文件:在
<PropertyGroup>节点中添加:<StyleCopAnalyzers_DisableRules>SA0001</StyleCopAnalyzers_DisableRules>
完成以上配置后,你就能看到所有文件(包括关闭的)的SA160x警告,同时CS1591和SA0001会被完全屏蔽啦。
内容的提问来源于stack exchange,提问作者Cato Lommerud
相关产品推荐
相关产品推荐

