方法 : XML ドキュメント機能を使用する (C# プログラミング ガイド)
次の例では文書化された型の基本的な概要を説明します。
使用例
// If compiling from the command line, compile with: /doc:YourFileName.xml
/// <summary>
/// Class level summary documentation goes here.</summary>
/// <remarks>
/// Longer comments can be associated with a type or member through
/// the remarks tag.</remarks>
public class TestClass : TestInterface
{
/// <summary>
/// Store for the name property.</summary>
private string _name = null;
/// <summary>
/// The class constructor. </summary>
public TestClass()
{
// TODO: Add Constructor Logic here.
}
/// <summary>
/// Name property. </summary>
/// <value>
/// A value tag is used to describe the property value.</value>
public string Name
{
get
{
if (_name == null)
{
throw new System.Exception("Name is null");
}
return _name;
}
}
/// <summary>
/// Description for SomeMethod.</summary>
/// <param name="s"> Parameter description for s goes here.</param>
/// <seealso cref="System.String">
/// You can use the cref attribute on any tag to reference a type or member
/// and the compiler will check that the reference exists. </seealso>
public void SomeMethod(string s)
{
}
/// <summary>
/// Some other method. </summary>
/// <returns>
/// Return results are described through the returns tag.</returns>
/// <seealso cref="SomeMethod(string)">
/// Notice the use of the cref attribute to reference a specific method. </seealso>
public int SomeOtherMethod()
{
return 0;
}
public int InterfaceMethod(int n)
{
return n * n;
}
/// <summary>
/// The entry point for the application.
/// </summary>
/// <param name="args"> A list of command line arguments.</param>
static int Main(System.String[] args)
{
// TODO: Add code to start application here.
return 0;
}
}
/// <summary>
/// Documentation that describes the interface goes here.
/// </summary>
/// <remarks>
/// Details about the interface go here.
/// </remarks>
interface TestInterface
{
/// <summary>
/// Documentation that describes the method goes here.
/// </summary>
/// <param name="n">
/// Parameter n requires an integer argument.
/// </param>
/// <returns>
/// The method returns an integer.
/// </returns>
int InterfaceMethod(int n);
}
コードのコンパイル
この例をコンパイルするには次のコマンド ラインを入力します :
csc XMLsample.cs /doc:XMLsample.xml
これはブラウザーまたは型のコマンドを使用して表示できるXMLsample.xml XML ファイルを作成します。
信頼性の高いプログラミング
XML ドキュメントは /// で始まります。新しいプロジェクトを作成するとウィザードはスタートの /// で始まる行を配置します。コメントの処理には、次の制限があります。
ドキュメントは、適切な XML であることが必要です。XML が整形式でない場合警告が生成されドキュメント ファイルにエラーが発生したことを示すコメントが含まれています。
開発者は、独自のタグ セットを自由に作成できます。推奨される一連のタグがあります (そのほかの読み取り " を参照してください)。推奨されるタグには、次のような特殊な意味を持つタグがあります。
<param> タグは、パラメーターの記述に使用します。このタグを使用した場合、コンパイラはパラメーターが存在するかどうか、およびすべてのパラメーターがドキュメントに記述されているかどうかを検査します。検証に失敗した場合コンパイラは警告を発行します。
cref 属性をタグに追加すると、コード要素を参照できます。コンパイラはこのコード要素が存在することを確認します。検証に失敗した場合コンパイラは警告を発行します。コンパイラは、cref 属性に記述されている型を探すときに、using ステートメントについて考慮します。
<summary> タグは、型やメンバーについての追加情報を表示するために、Visual Studio の IntelliSense で使用されています。
[!メモ]
XML ファイルでは型またはメンバーに関する完全な情報は提供されません (たとえば型情報は含まれていません)。型やメンバーに関する完全な情報を得るには、ドキュメント ファイルを実際の型やメンバーのリフレクションと共に使用する必要があります。
参照
関連項目
XML ドキュメント コメント (C# プログラミング ガイド)