使用SandCastle创建.Net帮助文档

引用自:http://www.cnblogs.com/DotNetNuke/archive/2009/04/23/1441899.html

Sandcastle是微软提供的一个根据XML注释和DLL文件生成帮助文件的工具,目前是在CodePlex上的一个开源项目,可以去这里下载:Sandcatle 项目
Sandcastle 本身是一个console的程序,为了方便使用,我们可以使用他的GUI版本:Sandcastle Help File Builder

第一步,为你写的代码添加XML注释

我们创建一个简单的ClassLibrary1项目最为示范:

using System;
 
using System.Collections.Generic;
 
using System.Text;
 
 
 
namespace ClassLibrary1
 
{
 
    /// <summary>
 
    /// A sample class to show something using Sandcastle
 
    /// </summary>
 
    public class SampleClass
 
    {
 
        private string _propertyValue;
 
 
 
        /// <summary>
 
        /// Gets or sets the property value.
 
        /// </summary>
 
        /// <value>The property value.</value>
 
        public string Property
 
        {
 
            get
 
            {
 
                return _propertyValue;
 
            }
 
            set
 
            {
 
                _propertyValue = value;
 
            }
 
        }
 
 
 
        /// <summary>
 
        /// Determines whether the property is null.
 
        /// </summary>
 
        /// <returns>
 
        ///     <c>true</c> if property is null; otherwise, <c>false</c>.
 
        /// </returns>
 
        public bool IsPropertyNull()
 
        {
 
            bool result = false;
 
 
 
            if (this.Property == null)
 
            {
 
                result = true;
 
            }
 
            return result;
 
        }
 
 
 
        /// <summary>
 
        /// Determines whether the property is null.
 
        /// </summary>
 
        /// <returns>
 
        ///     <c>true</c> if property is empty; otherwise, <c>false</c>.
 
        /// </returns>
 
        /// <example>
 
        /// This example shows how you might use this method:
 
        /// 
 
        /// <code>
 
        /// SampleClass sample = new SampleClass();
 
        /// 
 
        /// if (sample.IsPropertyEmpty())
 
        /// {
 
        ///        Console.WriteLine("The property is empty");
 
        /// }
 
        /// else
 
        /// {
 
        ///        Console.WriteLine("The property contains value " + sample.Property);
 
        /// }
 
        /// </code>
 
        /// </example>
 
        public bool IsPropertyEmpty()
 
        {
 
 
 
            bool result = this.IsPropertyNull();
 
 
 
            if (!result)
 
            {
 
                result = (Property.Trim().Length == 0);
 
            }
 
            return result;
 
        }
 
    }
 
}

代码很简单,注意其中的XML注释。

打开项目的属性,在“Build”选项中,确保“XML documentation file:”被选中了。

第二步,编译这个项目,你会看到生成的DLL文件和XMl文件:

第三步,打开 Sandcastle Help File Builder

打开Sandcastle Help File Builder并新建一个项目:

为Sandcastle Help File Builder项目添加编译生成的DLL文件,右键点击项目右边的“Documentation Sources",选择“Add Documentation Source...”

选择刚刚生成的DLL文件。

第四步,修改设置

在项目的属性窗口,你可以根据需要修改一些设置。

第五步,生成文档

点击Build the help file来生成文档。

这是最终生成的文档:

使用SandCastle创建.Net帮助文档的更多相关文章

  1. Sandcastle入门:创建C#帮助文档

    Sandcastle入门:创建C#帮助文档 今天学到了一个东西:利用vs2005生成的dll/xml来生成帮助文档. 完成这个伟大任务的是Sandcastle,微软推出的类库文档编译工具. 在开始这篇 ...

  2. 转 创建 JavaScript XML 文档注释

    http://www.cnblogs.com/chenxizhang/archive/2009/07/12/1522058.html 如何:创建 JavaScript XML 文档注释 Visual ...

  3. [Swift通天遁地]七、数据与安全-(8)创建普通PDF文档和加密PDF文档

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  4. MongoDB创建\更新\删除文档操作

     一.插入\创建文档 --当插入一个不存在的文档时,会自己主动创建一个文档 [root@racdb ~]# mongo MongoDB shell version: 2.4.14 connecti ...

  5. Elasticsearch 使用集群 - 创建和查询文档

    章节 Elasticsearch 基本概念 Elasticsearch 安装 Elasticsearch 使用集群 Elasticsearch 健康检查 Elasticsearch 列出索引 Elas ...

  6. 编写Java程序,使用 dom4j 创建一个 XML 文档,文档名为“city.xml”。注意该文档的格式和数据

    查看本章节 查看作业目录 需求说明: 使用 dom4j 创建一个 XML 文档,文档名为"city.xml".该文档的格式和数据如图所示 实现思路: 创建Java项目,添加dom4 ...

  7. 编写Java程序,创建一个 XML 文档,文档名为“hero.xml”,用于保存“王者荣耀”的英雄信息。

    查看本章节 查看作业目录 需求说明: 创建一个 XML 文档,文档名为"hero.xml",用于保存"王者荣耀"的英雄信息.英雄信息包括编号(id).姓名(na ...

  8. 使用 Sandcastle 生成代码帮助文档

    使用 Sandcastle可以生成MSDN风格的帮助文档,生成的帮助文档既可以是chm文档,也可以是MS Help 2.x帮助文档. 1 下载并安装Sandcastle Sandcastle下载地址为 ...

  9. 基于Picture Library创建的图片文档库中的上传多个文件功能(upload multiple files)报错怎么解决?

    复现过程 首先,我创建了一个基于Picture Library的图片文档库,名字是 Pic Lib 创建完毕后,我点击它的Upload 下拉菜单,点击Upload Picture按钮 在弹出的对话框中 ...

随机推荐

  1. Jenkins 2.x版本修改启动端口号(Windows)

    可能有一些原因,8080端口被占用了,无法使用时需要修改jenkins的启动端口号. 如果首次安装,建议先停止原有系统的8080端口占用,等jenkins安装完成后,再进行修改,然后该回8080的原系 ...

  2. MAC上快速调出终端的设置(保持和Windows的操作一致)

    在Windows上可以这样操作[Win+R]键->输入[cmd/cmder]打开终端. 在MAC下需要做些设置:打开[系统偏好设置]->打开[键盘]->打开[快捷键]->找到[ ...

  3. ubuntu安装WPS

    自带的LiberaOffice略渣,还是安上WPS吧. 直接按官网上的sudo apt-get install ia32-libs根本无法运行.需要先做个补丁. 用sudo gedit打开编辑器,输入 ...

  4. [NOIP2015] 提高组 洛谷P2668 斗地主

    题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3<4< ...

  5. 洛谷P1595 信封问题

    题目描述 某人写了n封信和n个信封,如果所有的信都装错了信封.求所有信都装错信封共有多少种不同情况. 输入输出格式 输入格式: 一个信封数n 输出格式: 一个整数,代表有多少种情况. 输入输出样例 输 ...

  6. JavaScript 写几个简单的知识点

    首先,还是用比较官方的文字描述来解释下JavaScript: JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为 ...

  7. C# 开源项目一

    商业协作和项目管理平台-TeamLab 网络视频会议软件-VMukti 驰骋工作流程引擎-ccflow [免费]正则表达式测试工具-Regex-Tester Windows-Phone-7-SDK E ...

  8. SMO推导和代码-记录毕业论文4

    SMO的数学公式通过Platt的论文和看这个博客:http://www.cnblogs.com/jerrylead/archive/2011/03/18/1988419.html,大概弄懂了.推导以后 ...

  9. chmod 和 chown 的用法

    一.chown 命令 用途:更改文件的所有者或组.命令由单词change owner组合而成. 使用示例: 1,更改文件的所有者: chown jim program.c 文件 program.c 的 ...

  10. re正则表达式6_+

    + means"match one or more" the group proceding a plus must appear at least once. # -*- cod ...