在Java中,如果我在父类或接口上有一个Javadoc,那么当我将鼠标悬停在子类名上时,Javadoc将出现在大多数IDE中的子类或接口的上下文中。但是,在使用C#的XML注释的Visual Studio中,这似乎并非如此。有没有办法在父类和子类之间自动同步XML注释,所以我不必复制/粘贴它们并手动同步它们?
答案 0 :(得分:3)
如果您要创建其他项目将使用的库,那么您可以使用Sandcastle帮助文件构建器(SHFB)<inheritdoc>
标记。虽然Visual Studio本身不了解此标记,但SHFB提供了一个IntelliSense Component来读取项目生成的XML文档文件,并写出一个新的XML文档文件,其中所有<inheritdoc>
标记都替换为继承的文档。这正是我们用于在NuGet上发布openstack.net SDK的XML文档的过程:
Create XML documentation during the build.
Include the IntelliSense Component in our SHFB project.
创建一个explicitly references the XML documentation created by the IntelliSense Component的.nuspec文件(NuGet包规范),而不是C#编译器创建的文档。
在Visual Studio中,能够查看基类的文档也是有益的。我使用Inheritance Margin扩展从覆盖或实现方法跳转到完全记录的基类或接口。
答案 1 :(得分:2)
答案 2 :(得分:2)
我构建了一个工具来对XML文档文件进行后期处理,以添加对&lt; inheritdoc /&gt;的支持。标签。
虽然它对源代码中的Intellisense没有帮助,但它确实允许修改后的XML文档文件包含在NuGet包中,因此可以在引用的NuGet包中使用Intellisense。
请访问www.inheritdoc.io(免费版)。