如何用DocFx直接生成网页或PDF文档且不新增项目文件?
可以实现,推荐两种无需修改项目目录的方案
方案1:使用DocFX(完全避开项目目录)
DocFX默认初始化会在项目目录生成配置文件,但你可以通过指定外部目录存储元数据和输出,完全不触碰原项目文件夹:
- 先全局安装DocFX:
dotnet tool install -g docfx - 在任意外部目录(比如
C:\temp\docs)生成项目元数据,指向你的C#项目路径:docfx metadata -o C:\temp\docs\metadata "C:\path\to\your\project.csproj" - 基于生成的元数据构建网页文档,输出到指定外部目录:
docfx build C:\temp\docs\metadata\docfx.json -o C:\temp\docs\output
所有中间文件和最终网页都存储在外部目录,你的项目目录不会新增任何文件。
方案2:使用Sandcastle Help File Builder(命令行独立构建)
Sandcastle不需要在你的解决方案内新建项目,只需预先创建一个临时的SHFB项目文件放在外部目录,通过命令行完成构建:
- 安装Sandcastle Help File Builder(包含命令行工具
SHFBConsole.exe) - 在外部目录创建一个SHFB项目文件(比如
temp.shfbproj),配置中指定你的C#项目路径和文档输出目录 - 运行命令构建网页文档:
SHFBConsole /project:"C:\temp\docs\temp.shfbproj" /output:"C:\temp\docs\output"
这个临时项目文件完全独立于你的解决方案,不会对原项目造成任何改动。
额外提示
- 两种方案都支持增量构建,后续更新代码后只需重新运行构建命令即可
- 如果需要自定义文档样式,可以在外部目录修改配置或模板,同样不会影响原项目
内容的提问来源于stack exchange,提问作者Rafael Alfredo Zelaya Amaya
相关产品推荐
相关产品推荐

