并非所有命名空间都包含在Sandcastle构建文档中

时间:2011-10-21 12:55:41

标签: c# sandcastle

我在一个解决方案中有一个带有两个命名空间的C#项目。我已经记录了两个命名空间中的所有类/函数/成员/等。由于此项目是一个小型研究项目,因此名称空间为DocTestLibraryDocTestLibrary.Events。但是,当我尝试通过Sandcastle创建文档时,它只会为DocTestLibrary命名空间创建文档。我需要在Sandcastle中进行任何设置才能完成这项工作吗?我怀疑它,因为我已经仔细研究过它们。

奇怪的是,Doxygen能够很好地生成文档。


为了提供更多信息,我检查了Sandcastle为构建生成的日志。 似乎此条目导致其余条目无法显示。

Warn: ResolveReferenceLinksComponent2: Unknown reference link target 'T:DocTestLibrary.Events.DemoEvent'.

我也发现了别的东西。

DocTestLibrary命名空间由两个类组成:

  • 识别TestClass
  • StaticHelper

顾名思义,StaticHelper是一个只有静态方法的辅助类。然而,Sandcastle也否认要处理这个文件。只有TestClass得到了处理。只是让我感到困惑的是,日志中没有关于此的条目。

4 个答案:

答案 0 :(得分:12)

在我的sandcastle项目中,它总是只包含一个总共5个的命名空间。问题是我没有检查帮助文件包含根命名空间容器 >。

现在我的所有命名空间都以root命名空间的形式列出。

答案 1 :(得分:2)

DocTestLibrary.Events内的所有类型都是内部的吗?默认情况下,我认为Sandcastle只生成公共类型的文档。

答案 2 :(得分:1)

似乎通过在Sandcastle项目的DocumentInternals属性部分中设置Visibility来解决此问题。我想知道为什么会这样,因为没有代码被宣布为内部...

我想我会再玩一些......

答案 3 :(得分:1)

我发现可以通过手动设置您希望在“项目属性”下的“编辑API过滤器”中记录的类来修复此问题。可视性。