4

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

4

2 回答 2

4

我维护了一个开源项目,该项目实现了支持以编程方式访问 XML 文档注释的功能。有关该项目的更多信息,请参阅Jolt.NET ,特别是有关此功能的文档,请参阅“Querying XML Doc Comments ”。

这是一个如何使用该库来实现您要查找的内容的示例。

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");
}

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

于 2010-09-02T17:32:09.640 回答
1

我还没有听说过任何这样的工具。我所知道的唯一相似之处是 ReSharper 能够将 xmldoc 注释从基类复制到派生类。

于 2010-09-02T16:58:47.210 回答