DocFx参考markdown不同项目
DocFx reference markdown different project
我们正在开发一个多项目 *.sln 解决方案,并且可以在单独的 Asp.Net Web csproj 中使用 DocFx 成功生成带有 *.md 文章的 API 文档.
但我们想在各个 *.csproj 项目中维护和引用本地 Markdown *.md 文章和图像,并在全局文档站点中引用和重用它们,但不知何故我们只能获得 *.md 文件来自 Web.csproj 中的 /articles 文件夹。
这是当前的 docfx.json。如您所见,我们正在尝试引用来自不同项目的图像和降价文件
"../Generator/MyDocService.Contracts/**.png", 和
"../Generator/MyDocService.Contracts/*.md",
但它们都没有出现在我们的 "obj" 或“_site”文件夹中。
{
"metadata": [
{
"src": [
{
"files": [
"*.csproj"
],
"src": "../Generator/GenBasics",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../DocFrameworkCore/GenCore",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../Generator/GenImpl",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../DocFrameworkCore/GenCoreBasics",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj",
"**.md",
"**.png"
],
"src": "../Generator/MyDocService.Contracts",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
}
],
"filter": "filterConfig.yml",
"dest": "obj/api"
}
],
"build": {
"content": [
{
"files": [
"api/**.yml"
],
"cwd": "obj"
},
{
"files": [
"api/*.md",
"articles/**.md",
"../Generator/MyDocService.Contracts/*.md",
"toc.yml",
"*.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"resource": [
{
"files": [
"../Generator/MyDocService.Contracts/**.png",
"images/**"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"overwrite": [
{
"files": [
"apidoc/**.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"dest": "_site",
"globalMetadata": {
"_appTitle": "MyDoc API",
"_appFooter": "",
"_appLogoPath": "images/My.png",
"_appFaviconPath": "favicon.ico",
"_enableSearch": true,
"_disableContribution": true
},
"template": [
"default",
"docfx-tmpl/src"
]
}
}
我制作分布式 *.md 文件的唯一方法
所有 Sub-Projects 可用的是将 docfx.json 放在解决方案的根目录中。
我们正在开发一个多项目 *.sln 解决方案,并且可以在单独的 Asp.Net Web csproj 中使用 DocFx 成功生成带有 *.md 文章的 API 文档.
但我们想在各个 *.csproj 项目中维护和引用本地 Markdown *.md 文章和图像,并在全局文档站点中引用和重用它们,但不知何故我们只能获得 *.md 文件来自 Web.csproj 中的 /articles 文件夹。
这是当前的 docfx.json。如您所见,我们正在尝试引用来自不同项目的图像和降价文件
"../Generator/MyDocService.Contracts/**.png", 和
"../Generator/MyDocService.Contracts/*.md",
但它们都没有出现在我们的 "obj" 或“_site”文件夹中。
{
"metadata": [
{
"src": [
{
"files": [
"*.csproj"
],
"src": "../Generator/GenBasics",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../DocFrameworkCore/GenCore",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../Generator/GenImpl",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj"
],
"src": "../DocFrameworkCore/GenCoreBasics",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
},
{
"files": [
"*.csproj",
"**.md",
"**.png"
],
"src": "../Generator/MyDocService.Contracts",
"exclude": [
"**/obj/**",
"**/bin/**",
"_site/**"
]
}
],
"filter": "filterConfig.yml",
"dest": "obj/api"
}
],
"build": {
"content": [
{
"files": [
"api/**.yml"
],
"cwd": "obj"
},
{
"files": [
"api/*.md",
"articles/**.md",
"../Generator/MyDocService.Contracts/*.md",
"toc.yml",
"*.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"resource": [
{
"files": [
"../Generator/MyDocService.Contracts/**.png",
"images/**"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"overwrite": [
{
"files": [
"apidoc/**.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"dest": "_site",
"globalMetadata": {
"_appTitle": "MyDoc API",
"_appFooter": "",
"_appLogoPath": "images/My.png",
"_appFaviconPath": "favicon.ico",
"_enableSearch": true,
"_disableContribution": true
},
"template": [
"default",
"docfx-tmpl/src"
]
}
}
我制作分布式 *.md 文件的唯一方法 所有 Sub-Projects 可用的是将 docfx.json 放在解决方案的根目录中。