代码之家  ›  专栏  ›  技术社区  ›  Dan7

一种将XML注释从一组API复制到另一组类似的API的方法?

  •  4
  • Dan7  · 技术社区  · 16 年前

    假设在Visual Studio中,我有一个新项目,其中包含一些来自旧项目的相同API,我希望将XML文档复制到新项目中。有没有一种方法可以做到这一点而不需要手动复制粘贴它们?

    2 回复  |  直到 13 年前
        1
  •  4
  •   Steve Guidi    16 年前

    我维护了一个开源项目,它实现了一个支持编程访问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");
    }
    

    在本例中,我假设您希望在两个程序集中复制类似类型的Doc注释。如果需要进一步将复制约束到特定的成员,也可以使用库来完成这一点,尽管您需要自己实现方法过滤逻辑。

        2
  •  1
  •   user438034    16 年前

    我没听说过这种工具。我所知道的唯一一件远程相似的事情就是Resharper能够将xmldoc注释从基类复制到派生类。