如何在“ Resharper的StyleCop”中添加自定义规则?

时间:2019-01-18 16:02:37

标签: visual-studio-2013 resharper stylecop

问题:

我的公司最近决定改善编码标准。提议之一是在带有括号的“ if”语句后添加空白行。例如:

if(condition)
    statement;

statement;

这种构造在我们的代码库中被广泛使用,添加空白行将提高可读性。现在,我的工作是找到一种方法来携带VS13在检查中表明这一点。

尝试的解决方案:

起初,我尝试使用Resharper解决此问题。

Code Editing -> C# -> Formatting Style -> Blank Lines中没有这样的选项。

一个模式(添加到Code Inspection -> Custom Patterns中)确实找到了'if'语句,但是根据互联网,我不能添加空行,因为这超出了该功能的范围。

那时,我搜索了另一个解决方案并找到了StyleCop。我尝试的第一个版本是“ Resharper的StyleCop”(here)。据我所知,StyleCop也不支持此功能。但是there是说明如何在另一个Stylecop版本中添加自定义规则的文档。因此,我认为在'Resharper的StyleCop'中也可能出现这种情况。但是很遗憾,任何地方都没有文档。

然后我使用Visual StyleCop并删除了Resharper版本。我还下载了VisualStudio Extension for Visual StyleCop并实现了自定义规则。该扩展程序甚至发现了规则...但是它没有在我的解决方案中标记任何内容,并且手动扫描已被提前取消而没有错误。

另一方面:由于与2015年之后的VS版本不兼容,我显然不能使用StyleCopAnalyzers。

问题:

如何解决?我认为,将解决方案添加到“ Resharper的StyleCop”中将是最优雅的解决方案。但实际上,在这一点上任何建议都会有所帮助。

1 个答案:

答案 0 :(得分:0)

我认为在单if行后有一个空行的选项位于
代码编辑> C#>格式设置>代码中的空行> After语句,并带有控件转移和设置到1

AFAIK向Stylecop添加新的自定义规则的唯一方法(与R#中的规则无关,只需执行以下-> https://www.planetgeek.ch/2009/07/19/custom-stylecop-rules-2/