Исключить файл из анализа StyleCop: тег «автоматически сгенерированный» игнорируется - PullRequest
23 голосов
/ 17 февраля 2011

В начале файла C # я добавил:

//-----------------------------------------------------------------------
// <copyright company="SomeCompany" file="MyFile.cs">
// Copyright © Some Company, 2011
// </copyright>
// <auto-generated />
//-----------------------------------------------------------------------

Я хочу, чтобы StyleCop пропустил проверку этого файла, поэтому я использовал трюк auto-generated, описанный в другие ответы .

Однако после очистки и перестройки моего решения StyleCop продолжает генерировать предупреждения для этого файла.Почему это происходит?Как это можно исправить?

Я использую Microsoft Visual Studio 2008 Professional Edition и StyleCop v4.3.

Ответы [ 3 ]

23 голосов
/ 17 февраля 2011

@ Frédéric - к сожалению, опция Analyze generated files никак не связана с пропуском файлов с тегом <auto-generated />.

Файлы, содержащие текст <auto-generated />, всегда будут пропущены независимо от значения параметра.

@ Даниэль - Я полагаю, что вы имеете дело с ошибкой в ​​версии 4.3, которая была выпущена более года назад и сейчас явно устарела.Единственная причина использовать 4.3 только в том случае, если вы используете Visual Studio 2005, которая не поддерживается StyleCop 4.4.

Я настоятельно рекомендую вам обновить до 4.4 - я только что проверил ваш пример, и он отлично работает.

2 голосов
/ 06 марта 2017

Вы можете установить исключения из файла в файле Settings.StyleCop. Файл находится в вашем решении / проекте или в каталоге установки StyleCop.

Затем вы можете использовать регулярные выражения в настройках Parser для определения файлов, которые вы хотите игнорировать

<Parsers>
  <Parser ParserId="Microsoft.StyleCop.CSharp.CsParser">
    <ParserSettings>
      <BooleanProperty Name="AnalyzeDesignerFiles">False</BooleanProperty>
      <CollectionProperty Name="GeneratedFileFilters">
        <Value>\.g\.cs$</Value>
        <Value>\.generated\.cs$</Value>
        <Value>\.g\.i\.cs$</Value>
        <Value>codegen.*\.cs$</Value>
      </CollectionProperty>
    </ParserSettings>
  </Parser>
</Parsers>

В этом случае я хочу игнорировать codegen.whatever.cs

0 голосов
/ 14 августа 2015

Проверка Документация StyleCop . Мой любимый тег <auto-generated /> в верхней части документа, или вы можете использовать директиву #region или другие параметры, упомянутые в документации.

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