Description
Describe the bug
For types, the generated pages contain a Namespace
value. This consists of several links. However, this does not respect the project's RootNamespace
anymore since version 2.65.2. Instead it creates a link for each namespace part, including non-existing parent namespaces. For instance, if my root namespace is Foo.Bar.Baz
, the namespace contains the following links:
Foo
->Foo.html
Bar
->Foo.Bar.html
Baz
->Foo.Bar.Baz.html
The problem is that Foo.html
and Foo.Bar.html
don't exist, leading to 404 errors.
Maybe I'm missing some configuration, but I tried several options including globalNamespaceId
but the issue is not fixed. Downgrading to version 2.65.1 isn't possible because of #9047 and #9153.
To Reproduce
Minimal docfx.json
:
{
"metadata": [
{
"src": [
{
"files": [
"**.csproj"
],
"src": "../Foo.Bar.Baz"
}
],
"dest": "api"
}
],
"build": {
"content": [
{
"files": [
"api/**.yml"
]
},
{
"files": [
"toc.yml"
]
}
],
"dest": "_site"
}
}
The Foo.Bar.Baz
project descriptor contains this:
<RootNamespace>Foo.Bar.Baz</RootNamespace>
Run docfx docfx.json
from the directory where docfx.json
is located.
This successfully generates the API pages but with the invalid links.
Expected behavior
Foo
is not a linkBar
is not a linkBaz
is a link toFoo.Bar.Baz.html
Screenshots
Generated using version 2.65.1:
Generated using the latest version:
Context (please complete the following information):
- Docfx version: 2.78.3
- Template: default