从C#中的接口继承XML注释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从C#中的接口继承XML注释相关的知识,希望对你有一定的参考价值。

我想知道是否有人知道如何将接口xml注释链接到实现。问题是我希望基本注释首先来自我的界面。例:

interface myinterface {

       /// <summary>
       /// Does something.
       /// </summary>
       void method1(string foo);

}

然后实现是:

public class myclass : myinterface {


       public void method1(string foo) {
             //do something...
       }
}

所以现在如果我在实例化对象后用鼠标悬停在方法上:

myclass foo = new myclass();
foo.method1("do something");

如何使评论显示在悬停弹出窗口中?有什么方法可以将接口注释链接到实现吗?我知道Java中有一种方法,但无法找到C#的解决方案。

谢谢

答案

链接XML注释是恕我直言,但你可以使用像GhostDoc这样的工具将XML Comment从你的Interface / Baseclass复制到implementation / derived类。

另一答案

XMLDoc定义了一个标记<include />,用于包含自Visual Studio 2003以来一直存在的另一个文件的注释。最大的警告是引用的文件应该是仅包含XMLDoc文档的文件,而不是另一个源文件。

有关详细信息,请参阅the MSDN page

另一答案

如果你使用GhostDoc,那么将文档从接口“传输”到实现代码有很大帮助。

另一答案

http://blog.x-tensive.com/2008/02/fixml.html

它是一个后处理器,具有缺少原始文档系统的某些附加选项。

来自网站:

简要总结:

FiXml是C# Visual Basic.Net生成的XML文档的后处理器。它解决了与使用这些语言编写XML文档相关的一些最烦人的情况: - 不支持从基类或接口继承文档。即任何被覆盖的成员的文档都应该从头开始编写,尽管通常至少要继承它的一部分是非常可取的。 - 不支持插入常用的文档模板,例如“此类型是单例 - 使用其属性获取它的唯一实例。”,甚至“初始化类的新实例”。

另一答案

我构建了一个命令行工具来对XML文档文件进行后处理,添加对<inheritdoc />标记的支持。

虽然它对源代码中的Intellisense没有帮助,但它确实允许修改后的XML文档文件包含在NuGet包中,因此可以在引用的NuGet包中使用Intellisense。

有关更多信息,请参阅www.inheritdoc.io(可用免费版本)。

以上是关于从C#中的接口继承XML注释的主要内容,如果未能解决你的问题,请参考以下文章

如何从片段中的 JSON 响应中的对象获取数据

需要示例代码片段帮助

将接口从片段传递到kotlin中的活动

片段中的 MapView(蜂窝)

C ++如何从具有不同返回类型的接口多重继承?

常用idea命令