对于现有的 C# Web 项目,我正在尝试基于 Roslyn 分析器设置 StyleCop 代码分析。 (DotNetAnalyzers/StyleCopAnalyzers)
我已经设法使它能够很好地满足我们所需的代码风格,只是我们不想使用这些默认规则:
- SA1101:使用此前缀本地调用
- SA1309:字段名称不得以下划线开头
相反,我们希望以某种方式启用 stylecop.pdelvo.com 中提到的这些替代规则 DisabledAlternative
- SX1101:请勿在本地调用前添加“this”前缀。
- SX1309:字段名称必须以下划线开头
- SX1309S:静态字段名称必须以下划线开头
上述网站显示,这些替代规则甚至已实现代码修复,因此我希望它们可供使用。
我在网上反复搜索,只找到了介绍这些规则的提案帖子以及有关规则如何工作、如何抑制它们等的其他文档,但没有找到如何启用它们。
使用 GlobalSuppressions.cs 文件我只能抑制某些规则,但无法启用任何规则。
有关使用 stylecop.json 微调某些规则的文档也没有提及这一点。
如何启用这些替代规则?
调整现有代码以通过默认规则不是一个选项,简单地禁用 SA1101 和 SA1309 规则可以,但也不是最佳选择。
最佳答案
与其他规则非常相似。
- 右键单击项目 > 属性 > 代码分析
- 您应该会看到项目中当前使用的规则集。点击打开
- 您应该会看到按规则系列分组的规则列表,例如“StyleCop 分析器规则”、“Microsoft.CodeAnalysis.CSharp.Features”等。您所需的规则位于“StyleCop 分析器规则”下
您可以通过在过滤字段中输入 SX 来加快搜索速度
检查您的规则,尝试构建项目,您应该会在使用 this. 的地方看到警告/错误
关于c# - 使用 StyleCopAnalyzers (Roslyn) 时如何启用替代 StyleCop 规则(以 SX 为前缀)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44438840/