标签: sandcastle

是否可以将SandCastle创建的两个页面合并到一个主页面中?

对于项目中的每个类,SandCastle创建(以及其他)两个页面:

  • 主页面,称为T_class_full_name,带有描述,语法,继承层次结构和另请参阅
  • 成员页面,称为AllMembers_T_class_full_name,带有构造函数,方法,字段等.

有没有办法将这两者合并在一起 - members page附加到主页面?

.net sandcastle code-documentation

68
推荐指数
1
解决办法
1231
查看次数

.Net项目(Sandcastle)上的命名空间文档?

我不久前开始使用Sandcastle为我们的一个项目生成一个文档网站.它工作得很好,但我们始终只在项目中编写类,方法,属性(...)的文档,并为整个项目和项目部件/模块/命名空间提供完全独立的文档.如果我可以将这些文档合并在一起并将相应的文档添加到生成的帮助文件中,那将是很好的,但我无法弄清楚如何做到这一点.

只是在命名空间声明中添加注释似乎不起作用(C#):

/// <summary>
/// My short namespace description
/// </summary>
namespace MyNamespace { ... }
Run Code Online (Sandbox Code Playgroud)

有谁知道如何做到这一点?我知道有可能以某种方式,这将是非常好的... :)

.net documentation sandcastle

62
推荐指数
3
解决办法
3万
查看次数

如何找出生成的Sandcastle文档中导致差异的原因?

在Noda Time,我们使用Sandcastle和SHFB生成我们的文档.然后,我们将文档提交回源存储库 - 主要是因为这样可以轻松查看最新(和历史)文档.

我是该项目的主要开发人员,但我使用了两台计算机 - 不幸的是,他们正在构建不同的文档,即使它们都更新到同一个源.

这两台电脑在我能想到的每一个重要方面都是一样的:

  • Sandcastle 2.7.2.0
  • SHFB 1.9.6.0
  • VS 2012专业版(均在"程序"中报告版本11.0.50727.1,在"关于"页面中均为"版本11.0.51106.01更新1")
  • .NET Framework 4.5的本地帮助内容的最新版本(并且没有其他框架版本的本地帮助内容)

为确保清洁构建而采取的步骤:

  • 删除了SHFB缓存文件夹(C:\Users\Jon\AppData\Local\EWSoftware\Sandcastle Help File Builder\Cache)
  • 删除了生成文档的文件夹
  • 删除了与SHFB项目文件相关的用户设置文件
  • 删除了Visual Studio中的符号缓存

差异仍然存在.它们似乎仅限于从MSDN本身继承的文档Object.Finalize.

版本1(在机器"Chubby"上生成):

<div class="summary">Allows an object to try to free resources and perform
other cleanup operations before it is reclaimed by garbage collection.</div>
Run Code Online (Sandbox Code Playgroud)

版本2(在机器"桑迪"上生成):

<div class="summary">Allows an <a 
   href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">
   Object</a> to attempt to free resources and perform other cleanup operations
   before the <a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" 
   target="_blank">Object</a> is reclaimed …
Run Code Online (Sandbox Code Playgroud)

documentation sandcastle finalize shfb

46
推荐指数
1
解决办法
2054
查看次数

什么规则适用于SHFB的IntelliSenseComponent的输出文件夹?

Noda Time有一个问题,它所提供的XML文档文件也包含了所有内部和私有成员 - 这是一种耻辱.

幸运的是,Sandcastle帮助文件生成器有一个自定义构建组件 - IntelliSenseComponent在理论上它做了正确的事情.不幸的是,我无法弄清楚如何正确配置它.

文档给出了这个例子:

 <output includeNamespaces="false" namespacesFile="Namespaces"
   folder="{@OutputFolder}" />
Run Code Online (Sandbox Code Playgroud)

和州:

上面给出的示例来自Sandcastle帮助文件构建器的配置文件.与其一起使用时,替换标记{@SHFBFolder}和{@OutputFolder}用于在文件路径中插入帮助文件构建器的文件夹和项目的输出文件夹.这些在构建时被替换为适当的值.如果在您自己的构建脚本中使用该组件,请分别将该标记替换为组件程序集和输出文件夹的相对路径或绝对路径.

好吧,我正在使用SHFB,所以我希望它可以工作.但是,除了绝对的工作之路,我无法获得任何其他东西.我试过了:

folder="."
folder="{@OutputFolder}"
folder="{@OutputFolder}XYZZY"
folder="{@OutputFolder}\XYZZY"
folder="{@OutputFolder}/XYZZY"
folder="{@OutputFolder}/XYZZY/"
Run Code Online (Sandbox Code Playgroud)

(我只是使用XYZZY作为易于搜索的东西.)

看一下源代码,我希望我可以使用环境变量,但这不起作用:

folder="%CD%\XYZZY"
Run Code Online (Sandbox Code Playgroud)

虽然这样做......

folder="%USERPROFILE%\XYZZY"
Run Code Online (Sandbox Code Playgroud)

这有效:

folder="c:\users\jon\test\xyzzy"
Run Code Online (Sandbox Code Playgroud)

...但我真的不想要一个绝对的路径名.

文档表明所有这一切都应该很简单......我错过了什么?

涉及的版本:

  • SHFB:1.9.3.0
  • Sandcastle:2.6.10621.1

.net sandcastle xml-documentation shfb

43
推荐指数
1
解决办法
1564
查看次数

如何本地化.NET库的文档

我有一个开源项目(这里),其文档目前是法语.使用Sandcastle从代码中的XML注释生成文档.现在我想将文档翻译成英文并提供两种语言的文档,但我真的不知道从哪里开始...

  • 我是否需要从代码中提取XML注释并将它们放在单独的文件中?如果是,是否有任何工具可以自动化该过程?
  • 我正在使用Sandcastle帮助文件生成器来构建文档; 我是否需要创建一个单独的项目来构建英文文档,还是可以从同一个项目中完成?
  • 在翻译过程中是否有任何工具可以帮助您?例如并排显示原始和翻译的文档?

我也对如何制作多语言文档的链接感兴趣,因为我在Google上找不到任何有用的东西......

.net c# documentation sandcastle localization

34
推荐指数
2
解决办法
5398
查看次数

从VS 2010 C#XML文档生成HTML /帮助文件

我正在寻找一个从我的VS2010 XML文档创建HTML /帮助文件的好工具.我找到了一些商业工具,比如

我相信还有更多,我只列出这两个例子.还有简单的XSLT样式表,可以将XML转换为HTML文档.

您在使用什么,例如是否有免费工具进行转换,可能是插件.只是为了澄清,基本上我找到了两种工具:

  1. 以不同的目标格式转换XML文档文件的那些,这就是我正在寻找的.
  2. 帮助我在源代码中生成XML文档的工具.这不是(!)我在寻找的东西.

谢谢你的帮助.


Sandcastle/SHFB组合效果很好.感谢所有帮助过的人.

一些评论:

  1. NDoc似乎已经过时,最近的更新是从2005年开始的.这就是我跳过这个的原因.
  2. 类似的线程,也非常详细,可以在这里找到:如何将C#Xml Doc-Comments变成有用的东西?谢谢你的暗示!
  3. Sandcastle有一些来源,我找到的最新版本位于:http://sandcastle.codeplex.com/
  4. 为了生成MsHelp2我不得不安装VS 2008 SDK包含hscomp.exe.有一个版本1.0和1.1,据我所知,版本1.0包含编译器.有关详细信息,请参阅HelixsoftSocial MSDN.
  5. 在我的情况下,生成的WebHelp无法与Chrome正常工作.它总是重新加载index.html页面.
  6. 此处主题显示如何将命名空间信息添加到sandcastle文档中.
  7. 截至2012年11月的更新:对于我使用Doxygen的小型项目- 我发现它更容易配置.

c# xml sandcastle documentation-generation visual-studio-2010

26
推荐指数
1
解决办法
2万
查看次数

XML注释 - 应该看到引用完全合格吗?

基本上,何时真正需要(如果有的话)使用完全限定的xml参见参考:

<see cref="T:MyNamespace.Sub.MyType"/> //Option 1
<see cref="T:MyType"> //Option 2
Run Code Online (Sandbox Code Playgroud)

另外,引用.NET Framework对象怎么样?

<see cref="T:System.Collections.Generic.ICollection{T}"/> //Option 1
<see cref="T:ICollection{T}"/> //Option 2
Run Code Online (Sandbox Code Playgroud)

我知道完全符合条件的项目将始终允许Microsoft的Sandcastle正确地链接事物,但是一切都必须完全合格吗?


旁注:Microsoft Sandcastle是否能够链接到.NET Framework帮助文件,还是我通过引用浪费时间<see cref="T:System.Collections.Generic.ICollection{T}"/>

c# sandcastle xml-comments fully-qualified-naming

24
推荐指数
1
解决办法
4516
查看次数

DocProject与Sandcastle帮助文件生成器GUI

我有几个C#项目以及一些我试图一起记录的内部库组件.Sandcastle似乎是从C#生成文档的地方.我想知道DocProject或Sandcastle帮助文件生成器GUI中的哪一个更好,并支持我需要的功能.

我想只编译每个项目自己的文档部分,然后将它们全部集成到一起.(即一个文档项目中的库组件和它自己的文档项目中的每个项目,然后使用Help 2查看器在单个根目录中的所有上述内容)

c# sandcastle

22
推荐指数
2
解决办法
1万
查看次数

在使用Sandcastle构建期间自动生成html文档

通过Visual Studio中的构建步骤,我需要采取哪些步骤来自动构建HTML文档?我已经准备好所有注释并生成了comments.xml文件,并安装了Sandcastle.我只需要知道要在构建后步骤中添加什么以生成文档.

c# documentation sandcastle visual-studio-2008

21
推荐指数
2
解决办法
1万
查看次数

XML评论部分类/方法

是否有一种标准方法,用于生成API文档的工具处理部分类的XML样式注释?基本上,应该如何评论部分类/方法,以便生成的帮助文档不被破坏?这个问题可能因使用的工具而异,在这种情况下,我想最重要的两个工具是:

  • Visual Studio的内置方法来创建XML文档
  • 微软的Sandcastle

我不希望我的XML文档出来时髦

/// <summary>Some Foo class</summary>
public partial class Foo { ... }

/// <summary>Some Foo class that implements some interface.</summary>
public partial class Foo : ISomeInterface { ... }
Run Code Online (Sandbox Code Playgroud)

c# sandcastle partial-classes xml-comments visual-studio

20
推荐指数
1
解决办法
2921
查看次数