web-dev-qa-db-ja.com

StyleCopにファイルを無視させるにはどうすればよいですか?

コードにサードパーティの.csファイルを含めました。それはStyleCopのルールに準拠していませんが、StyleCopのチェックからそれを除外できるようにする必要がありますが、これまでに見つけた方法はどれも機能しません。

3つの方法がここに記載されています: http://sethflowers.com/blog/force-stylecop-to-ignore-a-file/ ..しかし、これらの方法はいずれもStyleCop4.7では機能しないようです

その中で最も有用なのは、.csprojのこのメソッドのようです。

<Compile Include="AViolatingFile.cs">
    <ExcludeFromStyleCop>true</ExcludeFromStyleCop>
</Compile>

ただし、ファイルを追加したにもかかわらず、StyleCopはこのファイルを解析するときにコンパイルエラーを引き起こします。

21
NickG
// <auto-generated/>

これをクラスのトップに置く

スタイル警官は自動生成されたコードを無視します

24
user2627366

私もしばらく前にstylecopを使用しましたが、csprojファイルで次の行を使用する必要があると思います。

<Import Project="$(MSBuildExtensionsPath)\StyleCop\v4.6\StyleCop.targets" Condition="Exists('$(MSBuildExtensionsPath)\StyleCop\v4.6\StyleCop.targets')" />

また、xml宣言のバージョン番号をインストールしたものに変更する必要があります。

お役に立てれば。

2
Rob Aston

Atm、XamarinStudioからStyleCop4.7.49を実行していますが、制御できない恐ろしい自動生成ファイルがあります(netfx-System.StringFormatWithを見てください)...

私にとっての解決策は、そのファイルのみのすべてのルールを無効にすることでした...それを行う方法は?

ファイルを変更する必要がありますSettings.StyleCopそしてStyleCopSettingsタグの中に以下を挿入します

<SourceFileList>
    <SourceFile>HideousClass.cs</SourceFile>
    <Settings>
        <GlobalSettings>
        <BooleanProperty Name="RulesEnabledByDefault">False</BooleanProperty>
        </GlobalSettings>
    </Settings>
</SourceFileList>

変化する HideousClass.cs必要なファイルを使用します。さまざまなファイルのルールを一度に設定する場合は、複数のSourceFileタグを設定することもできます。

CodePlex.comのStyleCopでファイルリストを使用 から取得(「例」の「ファイルのサブセットのすべてのルールを無効にする」を参照)。

一部のファイルに対してのみ一部のルールを有効または無効にする場合は、上記と同様のアプローチを使用できます。

1
Theraot