2

わかりました。今日のFxCopに関するもう1つの質問です。

IdentifiersShouldBeCasedCorrectlyルールに関する引数と、それを「XML」にするか「Xml」にするかを読みました。ええと、私は「XML」の人であり、そのようにとどまりたいと思っています。したがって、私はFxCopが常に私を修正することを望んでいません。

SuppressMessage属性は、特定の場合にのみ使用しています。また、FxCopを使用して大量のエラーをマークし、それらを「モジュール」レベルのSuppressMessageステートメントとしてassemblyinfo.csにコピーしました。それはかなりうまくいきます。

ただし、この厄介なIdentifiersShouldBeCasedCorrectlyルールをグローバルに無効にしたいのです。TeamCity 5.0.3を使用していて、FxCopプロジェクトファイルを使用していません(ただし、これは可能です)。FxCopCmdにパラメーターを渡して、このエラーを無視するように指示できることを期待していましたが、ドキュメントからはそのようには見えません。

それで...TeamCityビルドサーバーでFxCopプロジェクトファイルを作成し、それをFxCopビルドランナーに使用する以外にできることはありますか?

4

1 に答える 1

0

FxCop のインストール ディレクトリを調べます (私の場合は c:/program files/microsoft fxcop 1.36 です)。そのディレクトリに CustomDictionary.xml ファイルがあるはずです。CustomDictionary.xml の末尾にある CasingExceptions セクションに XML を追加すると、そのマシン上のすべてのプロジェクトのすべての名前空間と関数名の要素で XML の大文字と小文字が無視されます (もちろん、コマンド ラインで CustomDictionary.xml がオーバーライドされない限り)。

CustomDictionary.xml をプロジェクト ディレクトリにコピーし、プロジェクト ディレクトリ コピーの CasingExceptions セクションに XML を追加することもできます。これは、FxCop プロジェクト ファイルを必要とせずに自動的に検出され、そのプロジェクトにのみ使用されると思います。

それが私たちの TeamCity ビルドで行ったことですが、別の理由で FxCop プロジェクト ファイルが必要だったので、CustomDictionary.xml が FxCop によって自動的に検出されるかどうかを思い出せません (また、確認することもできません)。

例:

  <Acronyms>
<CasingExceptions>
  <Acronym>Pi</Acronym>
  <Acronym>Na</Acronym>   <!-- NaN -->
  <Acronym>NESW</Acronym> <!-- North East South West -->
  <Acronym>NWSE</Acronym> <!-- North West South East -->
  <Acronym>XML</Acronym> <!-- XML -->
</CasingExceptions>

MSDN FxCop FAQには、単語を無視する少し異なる例もあり ます。これが役に立てば幸いです!

于 2010-03-30T05:09:40.833 に答える