如何使用DocFx为解决方案中的其他项目生成文档

12

我正在使用DocFx在Visual Studio 2015中自动生成文档。

根据入门指南的说明,我添加了一个空的ASP.NET 4 Web应用程序,并使用Nuget控制台安装了DocFx构建包(例如Install-Package docfx.msbuild)。我构建了网站,它生成了项目代码的文档。

我想知道如何配置docfx.json以使DocFx记录解决方案中其他项目中的代码。

2个回答

15
docfx.json中,有一个metadata数组。示例metadata具有一个包含filesexclude属性的src对象。

要指向解决方案中的另一个项目,请将cwd属性添加到metadata并更改文件夹(例如:“../Another.Project”)。

{
  "metadata": [
    {
      "src": [
        {
          "files": [ "**/*.csproj" ],
          "exclude": [ "**/bin/**", "**/obj/**", "_site/**" ],
          "cwd": "../Another.Project"
        }
      ],
      "dest": "obj/api"
    }
  ],
  "build": ...
}

1
我刚刚引用了我的解决方案文件,它找到了所有包含的项目。很容易。 - Schwarzie2478
1
值得注意的是,自本文撰写以来,cwd属性已被弃用,现在应该替换为src。(是的,src:[{src:"../"}];这有点令人困惑。) - Jeremy Caney

1

这对我有用。

目录结构

+---ClassLibrary
|   \---ClassLibrary.csproj
\---DocFxProject
    \---docfx.json

docfx.json 内容 cwdsrc 是同一属性的同义词

{
  "metadata":
  [ 
    {
      "src":
      [
        {
          "files": [ "**/ClassLibrary.csproj" ],
          "src": "..",
          "exclude": [ "**/obj/**", "**/bin/**" ]
        } 
      ],
      "dest": "obj/api"
    }
  ],
  "build": { ... }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接