0

私はこのようなコメントがあります:

/// <summary>some summary</summary>
/// <param name="a">
///     <para id="0">Comment 0</para>
///     <para id="1">Comment 1</para>
///     <para id="2">Comment 2</para>
/// </param>
/// <param name="b">
///     <para id="1">Comment 3</para>
///     <para id="0">Comment 4</para>
/// </param>
void InterfaceMethod(int a, int b);

実装方法については、同じドキュメントが欲しいのですが、それらの段落がなくてもid="0"、を使用してinheritdocいます。inheritdoc要素を作成するにはどうすればよいですか?

このコンテキストでの属性のまれな使用によりid、ドキュメントに表示されている段落の順序に縛られないという柔軟性が追加されます。

4

1 に答える 1

0

解決策を見つけましたが、面倒に見えます。

/// <summary><inheritdoc/></summary>
/// <param name="a"><inheritdoc select="node()[parent::node()[@name='a'] and @id&gt;0]"/></param>
/// <param name="b"><inheritdoc select="node()[parent::node()[@name='b'] and @id&gt;0]"/></param>
public void InterfaceMethod(int a, int b) { }

XPath式をフィルターとして使用することはできないため、要素paramを繰り返す必要があります。式@id>0>エスケープする必要がある)は、目的の段落のみを選択するようになりました。

しかし、他のマークアップはどうですか?ネストされた要素はすべてのinheritdocノードのコンテンツを選択するため、親のname属性に条件を追加する必要があります。 param

最後に、inheritdocタグ内のsummaryタグが要約をコピーします。ルートレベルに配置した場合、ここで説明するようinheritdocに、これにより再びが選択されます。param

于 2012-03-06T13:34:08.967 に答える