2013-06-18 95 views
2

我正在寫一個C#類庫,其中包含許多功能類都相同的類。我需要提供關於每個類中的函數參數的XML註釋,這些註釋非常詳細,但在大多數情況下是相同的。有沒有重用XML註釋的方法,所以我不必在我的程序集中重複這些XML參數定義?C#XML評論重用

這是我班的一個示例:

public class IsodoseControl : TestModule 
{ 
    /// <summary> 
    /// Verify a control on Isodose dialog 
    /// </summary> 
    /// <param name="args"> **<-- WHAT I DON'T WANT TO KEEP REPEATING** 
    /// Arguments: [Property, Condition, Expected Value, Tolerance] 
    ///   Properties: STATE, VALUE, LABEL 
    ///   Conditions: Exists, DoesNotExist, IsEnabled, IsDisabled, ... 
    ///   Expected Value (optional): blah blah 
    ///   Tolerance (optional): blah blah blah 
    /// </param> 
    public VerifResult VerifyIsodoseControl(string[] args) 
    { 
     ... 
    } 
} 

public class BeamControl : TestModule 
{ 
    /// <summary> 
    /// Verify a control on Beam dialog 
    /// </summary> 
    /// <param name="args"> **<-- WHAT I DON'T WANT TO KEEP REPEATING** 
    /// Arguments: [Property, Condition, Expected Value, Tolerance] 
    ///   Properties: STATE, VALUE, LABEL 
    ///   Conditions: Exists, DoesNotExist, IsEnabled, IsDisabled, ... 
    ///   Expected Value (optional): blah blah 
    ///   Tolerance (optional): blah blah blah 
    /// </param> 
    public VerifResult VerifyBeamControl(string[] args) 
    { 
     ... 
    } 
} 

感謝

回答

0

我不認爲有一個在Visual Studio中任何會幫助你。 Sandcastle有一個標籤,inheritdoc,這將讓你繼承的XML註釋整個區塊,或者你可能還定義了一個沙堡token包含您的PARAM文本,這將讓你寫類似

/// <summary> 
/// Verify a control on Beam dialog 
/// </summary> 
/// <param name="args"><token>CommonParamInfo</token></param> 
/// (...) 

沙堡專門設計對於API文檔,可能並不適合您的情況。

1

「的<包括>標籤讓你指的評論中描述的類型和成員在源代碼中的另一個文件。」

你可以使用<包括>標籤兩類引用同一個文件。

/// <include file='comments.xml' path='MyDocs/MyMembers[@name="test"]/*' /> 
class OneClass {} 

/// <include file='comments.xml' path='MyDocs/MyMembers[@name="test"]/*' /> 
class DifferentClassWithTheSameFunctionality {} 

此鏈接提供了使用<的一些實例包括>:http://msdn.microsoft.com/en-us/library/9h8dy30z.aspx