2011/09/25 - C#ドキュメントの自動生成の現状

C#のXMLドキュメントコメント。MSが公式に出しているSandcastleを使ってみた。リフレクションをフルに使ってMSDNみたいな形式でドキュメントを出してくれる。標準の型とか親クラスはMSDNへのリンクまで貼ってくれるというやりすぎなツール。

2011092501


GUIのフロントエンドSandcastle Help File Builderってのもあるらしいけど,常に最新版を使うならやっぱCUIよね,ってことで使い方。ちなみにOSはWindows 7 x64,Visual Studioは2010 SP1。SandcastleはJune 2010(Version 2.6.1062.1)。

インストール
  1. Sandcastleの最新版をダウンロード,インストール
  2. 環境変数にDXROOTが登録されるが,間違っているので最後の「」を削除しておく。
ドキュメント生成
  1. Visual Studioのプロジェクトの設定で「XML documentation file」を有効にする。その際ファイル名は「プロジェクト名.xml」じゃなく「comments.xml」にする。
  2. XML Documentation Comments形式で正しくマークアップされたプロジェクトをビルド。
  3. comments.xmlとビルドしたファイルと「C:Program Files (x86)SandcastleExamplesSandcastlebuild_Sandcastle.bat」を同じフォルダにコピーする。
  4. ビルドしたファイルがexeの場合,build_Sandcastle.batを書き換える(※1)。
  5. プライベートメソッド等非公開メンバも出力するには,build_Sandcastle.batを書き換える(※2)。
  6. 上記フォルダで以下を実行。形式は引数によっていろいろ選べる。
    build_Sandcastle.bat
      vs2005 ビルドしたファイル名(拡張子なし) html
※1
修正前:MRefBuilder %2.dll /out:reflection.org
修正後:MRefBuilder %2.exe /out:reflection.org
※2
修正前:MRefBuilder %2.dll /out:reflection.org
修正後:MRefBuilder %2.dll /out:reflection.org /internal+

コメントする