Как добавить пользовательские правила в "StyleCop by Resharper"? - PullRequest
0 голосов
/ 18 января 2019

Проблема:

Моя компания недавно решила улучшить стандарты кодирования. Одно из предложений состояло в том, чтобы добавить пустую строку после оператора if, если в скобках указано значение. E.g.:

if(condition)
    statement;

statement;

Этот вид конструкции широко используется в нашей кодовой базе, и добавление пустой строки повысит читабельность. Теперь моя работа состоит в том, чтобы найти способ принести VS13, чтобы указать это при проверке.

Попытки решения:

Сначала я попытался решить эту проблему с помощью Resharper.

В Code Editing -> C# -> Formatting Style -> Blank Lines такая опция недоступна.

Шаблон (добавленный в Code Inspection -> Custom Patterns) действительно находит операторы 'if' очень хорошо, но я не могу добавить пустую строку, поскольку, согласно Интернету, это выходит за рамки этой функциональности.

В этот момент я искал другое решение и нашел StyleCop. Первая версия, которую я попробовал, была 'StyleCop by Resharper' ( здесь ). Насколько я могу судить, StyleCop также не поддерживает эту функцию. Но там - документация, объясняющая, как добавить пользовательские правила в другую версию Stylecop. Поэтому я подумал, что что-то подобное может быть возможно и в «StyleCop by Resharper». Но, к сожалению, нигде нет документации.

Затем я использовал Visual StyleCop и удалил версию Resharper. Я также скачал VisualStudio Extension для Visual StyleCop и реализовал свое собственное правило. Расширение даже нашло указанное правило ... но оно ничего не пометило в моем решении, и ручное сканирование было отменено досрочно без ошибки.

С другой стороны: я, очевидно, не могу использовать StyleCopAnalyzers, поскольку он не совместим с версиями VS ниже 2015 года.

Вопрос:

Как это можно решить? Я думаю, что решение, которое добавит пользовательское правило в StyleCop от Resharper, будет самым элегантным. Но на самом деле, на данный момент любое предложение будет полезным.

1 Ответ

0 голосов
/ 21 января 2019

Я думаю, что вариант иметь пустую строку после одиночной строки If меньше
Редактирование кода> C #> Стиль форматирования> Пустые строки в коде> После операторов с передачей управления и установить его на 1

AFAIK единственный способ добавить новые пользовательские правила в Stylecop (независимо от того, является ли он из R #, это сделать следующее -> https://www.planetgeek.ch/2009/07/19/custom-stylecop-rules-2/

...