Add-inはExpress Editionでは利用できませんが、外部ツールは利用可能ですね。
.TestやDevPartnerのような高価なツールを使わなくても、FxCopを使えばILの静的コード解析が可能です。
#ref(): File not found: "FxCop_in_VS.jpg" at page "Visual Studio/Tools"
- メニューの[ツール]から[外部ツール]を選択。
- 外部ツール登録ダイアログの各項目にそれぞれ以下の値を入力。
- [タイトル]に「FxCop」
- [コマンド]に「C:\Program Files\Microsoft FxCop 1.36\FxCopCmd.exe」
- [引数]に「/f:$(TargetPath) /r:"C:\Program Files\Microsoft FxCop 1.36\Rules" /c /d:$(ProjectDir)\bin /gac /igc」
- 「/d」オプションは、参照DLLがあるフォルダを必要に応じて指定する。
- [初期ディレクトリ]に「$(ProjectDir)」
- [出力ウィンドウを使用]をチェック
- で、メニューの[ツール]から[FxCop]を選択することで、ILの静的コード解析が実行され、結果が出力ウィンドウに表示されます。
ただし、Visual Studioでは
- 解析結果の除外ができない。
- エラー内容から、MSDNの関連ページを開けない。
など、FxCopアプリ単体実行時よりも機能的に劣る部分があります。
ソースの記述で解析を除外する方法 †
- 対象プロジェクトの「条件付きコンパイルシンボル」に「CODE_ANALYSIS」を追加します。
- FxCopのWindowsアプリで指摘事項を右クリックし、[Copy As] - [Suppress Message]を選択すると、その指摘事項を除外するためのコードがClipboardに登録されます。
- Clipboardの内容を、指摘箇所(Scopeに依って、該当メソッドだったりAssemblyInfo.csアセンブリだったり)に記述します。