使用 StyleCopAnalyzers (Roslyn) 时如何启用替代 StyleCop 规则(以 SX 为前缀)?
How to enable alternative StyleCop rules (prefixed with SX) when using StyleCopAnalyzers (Roslyn)?
对于现有的 C# Web 项目,我正在尝试基于 Roslyn 分析器设置 StyleCop 代码分析。 (DotNetAnalyzers/StyleCopAnalyzers)
除了我们不希望使用这些默认规则外,我已经设法使其能够很好地满足我们所需的代码风格:
- SA1101:用这个前缀本地调用
- SA1309:字段名称不得以下划线开头
相反,我们希望以某种方式启用 stylecop.pdelvo.com 中提到的这些替代规则,如 DisabledAlternative
- SX1101:不要在本地呼叫前加上 'this.'
- SX1309: 字段名称必须以下划线开头
- SX1309S: 静态字段名称必须以下划线开头
提到的网站显示这些替代规则甚至已经实施了代码修复,因此我希望它们可供使用。
我在网上反复搜索,只找到介绍这些规则的提案帖子和其他关于规则如何工作、如何抑制它们等的文档,但没有找到如何启用它们。
使用GlobalSuppressions.cs文件我只能禁止一些规则但我无法启用任何规则。
关于使用 stylecop.json 微调某些规则的文档也没有提及。
如何启用这些替代规则?
调整现有代码以通过默认规则不是一个选项,简单地禁用 SA1101 和 SA1309 规则也可行,但也不是最佳选择。
与其他规则几乎相同。
- 右键单击项目 > 属性 > 代码分析
- 您应该会看到当前在您的项目中使用的规则集。点击打开
- 您应该会看到按 'StyleCop analyzer rules'、'Microsoft.CodeAnalysis.CSharp.Features' 等规则系列分组的规则列表。您想要的规则在 'StyleCop analyzer rules'
下
您可以通过在筛选字段中输入 SX 来加快搜索速度
检查您的规则,尝试构建项目,您应该会看到 warnings/errors 其中使用了 this.
对于现有的 C# Web 项目,我正在尝试基于 Roslyn 分析器设置 StyleCop 代码分析。 (DotNetAnalyzers/StyleCopAnalyzers)
除了我们不希望使用这些默认规则外,我已经设法使其能够很好地满足我们所需的代码风格:
- SA1101:用这个前缀本地调用
- SA1309:字段名称不得以下划线开头
相反,我们希望以某种方式启用 stylecop.pdelvo.com 中提到的这些替代规则,如 DisabledAlternative
- SX1101:不要在本地呼叫前加上 'this.'
- SX1309: 字段名称必须以下划线开头
- SX1309S: 静态字段名称必须以下划线开头
提到的网站显示这些替代规则甚至已经实施了代码修复,因此我希望它们可供使用。
我在网上反复搜索,只找到介绍这些规则的提案帖子和其他关于规则如何工作、如何抑制它们等的文档,但没有找到如何启用它们。
使用GlobalSuppressions.cs文件我只能禁止一些规则但我无法启用任何规则。
关于使用 stylecop.json 微调某些规则的文档也没有提及。
如何启用这些替代规则?
调整现有代码以通过默认规则不是一个选项,简单地禁用 SA1101 和 SA1309 规则也可行,但也不是最佳选择。
与其他规则几乎相同。
- 右键单击项目 > 属性 > 代码分析
- 您应该会看到当前在您的项目中使用的规则集。点击打开
- 您应该会看到按 'StyleCop analyzer rules'、'Microsoft.CodeAnalysis.CSharp.Features' 等规则系列分组的规则列表。您想要的规则在 'StyleCop analyzer rules' 下
您可以通过在筛选字段中输入 SX 来加快搜索速度
检查您的规则,尝试构建项目,您应该会看到 warnings/errors 其中使用了 this.