【发布时间】:2011-04-09 17:28:26
【问题描述】:
假设我有这个构造函数:
/// <summary>
/// Example comment.
/// </summary>
public SftpConnection(string host, string username,
string password, int port) {...}
有这些重载:
public SftpConnection(string host, string username, string password)
: this(host, username, password, 22) { }
public SftpConnection(string host, string username, int port)
: this(host, username, "", port) { }
public SftpConnection(string host, string username)
: this(host, username, "", 22) { }
实际上,XML 注释非常大,有param、example 和exception 等元素。
有没有办法为重载添加一个特殊的 XML 注释单行,这样它们使用完全相同的 cmets,这样我就不需要复制粘贴整个巨大的原始 cmets?
我在想类似:<use cref="SftpConnection(string,string,string,int)" /> 这当然行不通。
我知道include 元素,但我得到的印象是它从 XML 文件中读取 cmets,这是我不想要的 - 我希望注释在代码中仍然可见,但是 只有一次。
谢谢:-)
【问题讨论】:
-
这个问题已经很老了——对于新来的人来说,谷歌搜索“inheritdoc”应该希望你能找到你所寻求的答案。 (这取决于您的选择和要求。)
-
@AnorZaken 您应该发表您的评论作为答案,它实际上非常有用。
-
@konrad.kruczynski
没有回答这个问题。它继承了整个 xmldoc 注释块,而不是来自重载方法(或构造函数)的特定参数 cmets。这个问题仍然很有效,因为除了下面 Timwi 建议的解决方法之外,我无法找到令人满意的答案。 -
@AnorZaken 嗯,是的。 InheritDoc 正是我正在寻找的答案。是的,它确实继承了重载方法的特定参数。是的,您可以在其后添加单个参数以获得唯一参数。不再复制/粘贴 cmets!谢谢!
标签: c# xml documentation overloading xmldocument