假设在 Visual Studio 中我有一个新项目,其中包含一些与旧项目相同的 API,并且我想将 xml 文档复制到新项目中。有没有一种方法可以做到这一点,而无需手动将它们一一复制粘贴?

有帮助吗?

解决方案

我维护一个开源项目,该项目实现了支持以编程方式访问 XML 文档注释的功能。看 震动网 有关该项目的更多信息,特别是“查询XML文档注释“查看此功能的文档。

以下是如何使用该库来实现您正在寻找的内容的示例。

using Jolt;
using System.Xml.Linq;

void CopyXmlDocComments(Assembly sourceAssembly)
{
    XDocument newDocComments = new XDocument();
    XmlDocCommentReader reader = new XmlDocCommentReader(sourceAssembly);

    foreach(Type t in sourceAssembly.GetTypes())  // implement type filter here
    {
        newDocComments.Add(reader.GetComments(t));
    }

    newDocComments.Save("newAssemblyName.dll.xml");
}

在此示例中,我假设您想要复制两个程序集中相似类型的文档注释。如果您需要将复制进一步限制为特定成员,您也可以使用库来完成此操作,但您需要自己实现方法过滤逻辑。

其他提示

我没有听到任何这样的工具。我知道这是远程类似的唯一事情是ReSharper的从基类xmlDoc中注释复制到派生类的能力。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top