我在一个解决方案中有一个带有两个命名空间的C#项目。我已经记录了两个命名空间中的所有类/函数/成员/等。由于此项目是一个小型研究项目,因此名称空间为DocTestLibrary
和DocTestLibrary.Events
。但是,当我尝试通过Sandcastle创建文档时,它只会为DocTestLibrary
命名空间创建文档。我需要在Sandcastle中进行任何设置才能完成这项工作吗?我怀疑它,因为我已经仔细研究过它们。
奇怪的是,Doxygen能够很好地生成文档。
为了提供更多信息,我检查了Sandcastle为构建生成的日志。 似乎此条目导致其余条目无法显示。
Warn: ResolveReferenceLinksComponent2: Unknown reference link target 'T:DocTestLibrary.Events.DemoEvent'.
我也发现了别的东西。
DocTestLibrary
命名空间由两个类组成:
顾名思义,StaticHelper是一个只有静态方法的辅助类。然而,Sandcastle也否认要处理这个文件。只有TestClass得到了处理。只是让我感到困惑的是,日志中没有关于此的条目。
答案 0 :(得分:12)
在我的sandcastle项目中,它总是只包含一个总共5个的命名空间。问题是我没有检查帮助文件包含根命名空间容器 >。
现在我的所有命名空间都以root命名空间的形式列出。
答案 1 :(得分:2)
DocTestLibrary.Events
内的所有类型都是内部的吗?默认情况下,我认为Sandcastle只生成公共类型的文档。
答案 2 :(得分:1)
似乎通过在Sandcastle项目的DocumentInternals
属性部分中设置Visibility
来解决此问题。我想知道为什么会这样,因为没有代码被宣布为内部...
我想我会再玩一些......
答案 3 :(得分:1)
我发现可以通过手动设置您希望在“项目属性”下的“编辑API过滤器”中记录的类来修复此问题。可视性。