问题标签 [shfb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
221 浏览

javascript - AjaxDoc - 如何配置?

我想记录我的项目。一切正常,但我无法让 AjaxDoc 正常工作。

拜托,有人可以给我写一些如何使用它们的简短教程吗?

我在 Visual Studio 中集成了 SHFB。然后我从http://ajaxdoc.codeplex.com/下载了 WebApp 项目,并将它们作为现有网站添加到我的解决方案中。我已经建立了这个站点,并且他的 URL 写入了 AjaxDoc 插件。

现在,AjaxDoc 默认配置为从 MicrosoftAjax.js 获取评论,它适用于我。但我尝试添加我自己的 MyJavaScript.js 并在 Projects 文件夹中创建 MyJavaScript.project.xml 但它不起作用。

JScript.project.xml:

JScript.js:

我从互联网上找到的一些项目中复制了这个......

我做错了什么?我如何评论我自己的项目,而不仅仅是 AjaxDoc/Projects 文件夹中的脚本?

感谢您的回复。

0 投票
1 回答
2096 浏览

documentation - 如何找出导致生成的 Sandcastle 文档存在差异的原因?

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

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

这两台计算机在我能想到的所有重要方面都是相同的:

  • 沙堡 2.7.2.0
  • SHFB 1.9.6.0
  • VS 2012 Professional(在“程序”中都报告了版本 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”上生成):

版本 2(在机器“Sandy”上生成):

两者都链接到相同的 MSDN 文档,该文档看起来像第 1 版(没有指向 的链接Object)。

查看一些更改的文件,更改是一致的并且仅限于此成员。

Sandcastle 可能从哪里获得此文档,我怎样才能让两台计算机以相同的方式运行?

编辑:还有一个信息片段 - 在两台机器上清理缓存并重建文档后,SHFB 缓存目录中有三个文件:

  • Reflection.cache 在两台机器上的大小相同
  • MsdnUrl.cache 在两台机器上的大小相同
  • .NETFramework_4.0.0319_E8879A28.cache 在 Chubby 上的大小为 13,377,733 字节,在 Sandy 上为 13,337,949 字节

编辑:重大进展!我发现差异可能来自哪里......

文件c:\Windows\Microsoft.NET\Framework\v2.0.50727\en\mscorlib.xml

  • 在 Chubby 上是 8,005,263 字节,日期为 2011 年 12 月 12 日,非链接文本为Finalize
  • 在 Sandy 上是 9,740,370 字节,日期为 2009 年 8 月 31 日,Finalize其中包含链接的文本

在两台机器上,mscorlib.dll其本身大小相同(4,550,656 字节),修改日期为 2012 年 9 月 13 日。

但是我怎样才能让它们相同呢?这种差异从何而来?(服务包?)

编辑:好的,版本c:\Windows是红鲱鱼 - 这是c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework应该受到指责的版本。我要看看我是否能找出为什么安装之间可能会有所不同......

0 投票
1 回答
277 浏览

.net - Sandcastle 帮助文件生成器找不到 vs2010.config

我正在尝试为可移植类库(.Net40、Silverlight 4、.Net for Windows Store、Windows Phone 7.5)构建文档作为 HTML 帮助 1 和 MS 帮助查看器。我只有一个“文档来源”。该项目设置为使用 vs2010 文档样式(vs2005 样式也存在问题)。每当我尝试构建文档项目时,无论是通过 Sandcastle Help File Builder GUI 还是 Visual Studio 2010,我总是会遇到相同的错误:

经过更多调查,该目录看起来应该是C:\Program Files (x86)\EWSoftware\Sandcastle Help File Builder\Templates\VS2010.config. 如何将 SHFB 重定向到该目录而不是它正在尝试的目录?

我必须做什么才能构建文档项目?

通过进一步调查,我想我已经推断出这个问题是由于文档源是一个可移植的类库。这是 SHFB 中的错误,还是我可以自己修复?

0 投票
1 回答
978 浏览

documentation - 为 Sandcastle MS Help Viewer 输出指定根容器

我正在使用 Sandcastle Help File Builder 为 SDK 创建精美的文档。为了支持 Visual Studio 的F1功能,输出之一是 MS Help Viewer 格式。问题是当我们将包安装到 Help Viewer 1.0 (Visual Studio 2010) 或 Help Viewer 2.0 (Visual Studio 2012) 中时,文档没有放入根容器中。

当前帮助查看器结果

图中显示的“API 参考”节点是类库本身的容器。虽然我们可以重命名此节点,但这样做不会为我们留下任何位置来包含除类库引用之外的概念性内容。将此与 .NET Framework 4 帮助中等效节点的位置进行比较。

参考帮助查看器主题

问题:为了与其他文档保持一致,我们如何让 Sandcastle 帮助文件生成器在用户指定的顶级容器中为我们的项目生成 MS 帮助查看器输出,当前的“API 参考”类库文档是该节点的子节点?

0 投票
1 回答
73 浏览

sandcastle - 显示成员而不是类:Sandcastle

我使用 Sandcastle HelpFileBuilder 创建我的 API 文档。一切都好。
在创建的帮助文件中,当点击索引中的主题时,通常会转到class

如何更改此链接以使链接转到班级成员

0 投票
1 回答
150 浏览

sandcastle - Sandcastle 生成代码块

我有一个需要创建文档文件的 C# 项目。我正在使用最新版本的 SHFB 和 VS 2005 创建 XML 文档文件。

如何在文档中添加代码块?我想展示我的功能的所有行,而不仅仅是样本的一部分。

我找到了一个文档,描述了如何使用代码标签在沙堡中添加代码块,但是我的函数没有那个标签,在项目中也有很多函数,所以不可能为所有函数添加标签。

有没有办法从项目中自动构建代码标签,或者在函数内部显示一个插件?

谢谢。

0 投票
1 回答
96 浏览

sandcastle - 是否可以创建仅 MAML 文档

我正在尝试创建一个不(必然)包含任何反映代码部分的帮助系统。使用最新的 Sandcastle 帮助文件生成器,是否可以只包含 MAML XML 文件,所以需要更改什么设置,因为目前我得到了

错误 BE0042:您必须以程序集或 Visual Studio 解决方案/项目文件的形式指定至少一个文档源。

0 投票
1 回答
714 浏览

msbuild - 将动态引用传递给 Sandcastle 帮助文件生成器

我一直在使用Sandcastle Help File Builder来生成文档——我现在正试图让它成为我们构建过程的一部分。我们的构建是使用 NAnt 控制的,每次构建时,输出都会发送到不同的位置(基于变更集编号,因此我们可以在没有冲突的情况下进行并发构建) - 即 dll 相对于源代码不在固定路径中.

我在 NAnt 脚本中添加了一个目标来调用 SHFB,它调用 msbuild 任务,指向包含 SHFB 项目的解决方案:

我已经指定了 ReferencePath 属性,就像在这个页面上一样,它似乎表明这将允许 SHFB 找到程序集并使用它们,而不是依赖于原始项目文件中的信息:

如果定义了 ReferencePath 属性,则在生成反射信息时将其传递给 GenerateRefInfo.proj 并由其使用。这允许您指定备用路径,在该路径中查找将覆盖项目文件中的提示路径的引用程序集。

但是,当构建达到这一点时,它会失败并出现以下错误:

SHFB:错误 BE0040:项目程序集不存在:D:\Build\Debug\wwwroot\bin\MyAssembly.dll

这是原始项目中指定的默认输出路径。

将程序集的位置传递到 SHFB 的正确机制是什么?

0 投票
1 回答
522 浏览

c# - 使用 Sandcastle 记录内部类

在我的 C# 项目中,SHFB 不包括内部类的描述,尽管<summary></summary>它们之前有元素。这些课程甚至出现在课程列表中,但描述是空白的。

在此处输入图像描述

在此处输入图像描述

我已启用内部成员的可见性,但无法弄清楚如何启用内部类。有任何想法吗?

在 VS2013 Ultimate 中开发,使用来自 NuGet 的最新 SHFB 版本 (2014.11.22.0)。

(我知道有些人会质疑我为什么要包含内部成员的文档,但事实证明,快速参考代码库对我们的开发团队很有用。)

0 投票
0 回答
45 浏览

.net - 在沙堡文档中列出所有带有特定(自定义)标签的类

有没有办法在 Sandcastle 文档中创建带有特定(自定义)标签的所有类的列表?

我正在使用自定义标签来标记我的课程中的特定行为。我在 main_conceptual.xsl 中映射了这个标签,内容显示在每个类的文档表中。

现在我想在文档中创建一个特殊页面(作为概念性内容?),它显示了所有用我的自定义标签标记的类的列表。是否有可能使用沙堡帮助文件生成器(SHFB)来做到这一点?也许在 .xsl 转换中?还是使用 MAML?