从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注释的主要内容,如果未能解决你的问题,请参考以下文章