Подавление StyleCop

Действительно ли возможно подавить правила StyleCop в более глобальном, что..., другими словами, не просто использование источника встраивает атрибуты?

5
задан Colonel Panic 27 September 2013 в 09:58
поделиться

2 ответа

Вы можете отключить определенные правила стиликов с помощью файла Setting.Stylecop. Например, в стиле есть определенные вещи, которые не соответствуют нашему стандарту. Например, в моих настройках. Наставьте файл stylecop, у нас есть:

<Analyzer AnalyzerId="Microsoft.StyleCop.CSharp.ReadabilityRules">
  <Rules>
    <Rule Name="PrefixLocalCallsWithThis">
      <RuleSettings>
        <BooleanProperty Name="Enabled">False</BooleanProperty>
      </RuleSettings>
    </Rule>
  </Rules>
  <AnalyzerSettings />
</Analyzer>

такое, что на вариабе или имуществе члена нам не нужно иметь «это». для каждого и каждого.

8
ответ дан 13 December 2019 в 22:07
поделиться

Совершенно верно!

Исходные атрибуты следует использовать только в самых редких случаях, подавляющее большинство настроек StyleCop должно выполняться через StyleCopSettingsEditor (щелкните правой кнопкой мыши проект, выберите «Параметры StyleCop», он откроется).

Это создаст файл Settings.StyleCop для этого проекта в каталоге проекта. Этот файл можно отредактировать вручную, как упоминается в другом ответе, но я бы никогда не предлагал взломать XML в редакторе. StyleCopSettingsEditor - определенно правильный выбор.

После того, как вы изменили настройки StyleCop, вы еще не закончили!
Эти настройки будут применяться только к этому одному проекту, и этого может быть явно недостаточно.
Я лично предлагаю переместить этот файл StyleCop.Settings на один каталог выше на уровень решения и добавить его как «элемент решения». Затем проверьте этот файл в TFS (или в любой другой системе управления версиями, которую вы используете). Теперь эти настройки StyleCop являются частью всего решения, и каждый получит их, когда сделает «Получить последнюю версию». При необходимости вы можете переопределить параметры решения настройками проекта (файл StyleCop.Settings на уровне проекта будет иметь приоритет над файлом на уровне решения).

Единственный способ сделать ваши настройки StyleCop более глобальными - это переместить их еще выше в дереве каталогов (до уровня Team Project, если вы используете TFS, что ненадежно, так как выполнение GetLatest на уровне решения не будет распространять их среди всех) или перезаписать файл Settings.StyleCop в установочном каталоге StyleCop (что еще более ненадежно, поскольку это не может быть обработано системой управления версиями и вместо этого должно быть отправлено всем или чему-то по электронной почте).

В целом, определенно есть способы сделать конкретные настройки StyleCop для вашей команды настолько глобальными, насколько вы хотите, у вас есть много вариантов.

2
ответ дан 13 December 2019 в 22:07
поделиться