2

このブログによると、StyleCop違反を警告ではなくビルドエラーとして扱うように、すべて/特定のプロジェクトを設定できます。

デフォルトでは、StyleCop 違反はビルド警告として表示されます。StyleCop 違反をビルド エラーにするには、StyleCopTreatErrorsAsWarnings フラグを false に設定する必要があります。このフラグは、マシン上の環境変数として、またはビルド環境コマンド ウィンドウ内で設定できます。このようにフラグを設定すると、StyleCop ビルド統合が有効になっているすべてのプロジェクトで、StyleCop 違反がビルド エラーとして自動的に表示されます。

または、このフラグは、特定のプロジェクトのプロジェクト ファイル内で設定できます。プロジェクトの .csproj ファイルを再度開き、ファイル内の最初の PropertyGroup セクションを見つけます。StyleCopTreatErrorsAsWarnings フラグを false に設定する新しいタグを追加します。

このドキュメントは、個々のルールをオン/オフできる場所を示していますが、重大度の設定をサポートしていないようで、完全にオン/オフするだけです。

どのルールがエラーと警告になるかをより細かく制御することはできませんか?

4

1 に答える 1

2

するべきではありませんが、本当に必要な場合は..どうしてですか?

これはアイデアであり、完全な解決策ではありません。

ファイルには 2 つの便利な行がありStyleCop.Targetsます。最初のものは StyleCop タスクをインポートします:

<UsingTask AssemblyFile=".\StyleCop.dll" TaskName="StyleCopTask"/>

そして、これはそれを呼び出します:

<StyleCopTask
  ProjectFullPath="$(MSBuildProjectDirectory)"
  SourceFiles="@(StyleCopFiles)"
  AdditionalAddinPaths="@(StyleCopAdditionalAddinPaths)"
  ForceFullAnalysis="$(StyleCopForceFullAnalysis)"
  DefineConstants="$(DefineConstants)"
  TreatErrorsAsWarnings="$(StyleCopTreatErrorsAsWarnings)"
  CacheResults="$(StyleCopCacheResults)"
  OverrideSettingsFile="$(StyleCopOverrideSettingsFile)"
  OutputFile="$(StyleCopOutputFile)"
  MaxViolationCount="$(StyleCopMaxViolationCount)"
        />

したがって、基本的には2回呼び出す必要があります.1回目はasを指定TreatErrorsAsWarningsfalse(警告がある場合は失敗します)、2回目はtrue(警告のみになります)。

また、2 つの個別の設定ファイルを使用する必要があります。1 つ目は stylecop の「エラー」、2 つ目は「警告」です。

于 2013-04-16T12:42:08.290 に答える