2012-01-03 7 views
1

コードにNotImplementedExceptionが残っている場合(リリースビルドでわかる)、利用可能なルールがあることを知っています(this answer、またはthis questionを参照)。コード分​​析があります。は、未完成であることが知られているので、NotImplementedExceptionをスローするメソッドを無視します。コード解析でNotImplementedExceptionをスローするメソッドを無視する

背景:
コードブロックを開発するとき、私はこれまでのことを完全に完了する前にテストしたいと思います。また、CAを有効にしたいので、エラーを早期に修正することができます(リソースを適切に処分しなかったなど)。しかし、私はそのコードを開発しているので、まだ私のテストでは使用されないスタブがいくつかあります。このようなスタブの本体は、通常、throw new NotImplementedException();で構成されます。

コードをビルドすると、CAはメソッドが「静的」であり、パラメータが使用されていないと不平を言っています。私はCAエラーを抑制することができると知っていますが、それは、それらの方法が構築され、余分なビルド(私はそれらを抑制することができるようにメッセージを取得するものと、コード)。

私の質問
コードパスの少なくとも1つに沿ってNotImplementedExceptionで終わるCA無視メソッドを持つ方法がありますか?デバッグモードでのみ動作するように設定できれば、リリースビルドでその例外に関する警告を受け取ることができれば便利です。

私はVS2010を使用しています。

答えて

1

いいえコード分析ではこのようなオプションはありません。

NotImplementedExceptionがスローされたことを示すカスタムルールを作成し、コード分析の結果を処理して、NotImplementedカスタムルールと同じターゲットメソッドを持つエントリを削除します。このルールは非常に簡単に実装する必要があります。おそらく、NotImplementedExceptionクラスのConstructor呼び出しを検索すれば十分でしょう。

しかし、これはコマンドラインからコード解析を実行し、xmlファイルを後処理する場合にのみ機能します。

GeneratedCodeAttributeを使用してメソッドをマークすることもできます。デフォルトでは無視されるためです。

+0

はい、私はいくつかのプラグインまたは何かを望んでいたので、私はオプションが見つかりませんでした。コマンドラインからの使用法は、私が後にしたものではありません:(Ctrl-)F5を押すとうまくいくはずです。の構文を覚えておくことができる単一の属性は、一時的な解決策、ありがとうございます。 –

関連する問題