[转载]使用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项目最为示范:


View Code
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Text;
 4 namespace ClassLibrary1
 5 {
 6     /// <summary>
 7     /// A sample class to show something using Sandcastle
 8     /// </summary>
 9     public class SampleClass
10     {
11         private string _propertyValue;
12         /// <summary>
13         /// Gets or sets the property value.
14         /// </summary>
15         /// <value>The property value.</value>
16         public string Property
17         {
18             get
19             {
20                 return _propertyValue;
21             }
22             set
23             {
24                 _propertyValue = value;
25             }
26         }
27         /// <summary>
28         /// Determines whether the property is null.
29         /// </summary>
30         /// <returns>
31         ///     <c>true</c> if property is null; otherwise, <c>false</c>.
32         /// </returns>
33         public bool IsPropertyNull()
34         {
35             bool result = false;
36             if (this.Property == null)
37             {
38                 result = true;
39             }
40             return result;
41         }
42         /// <summary>
43         /// Determines whether the property is null.
44         /// </summary>
45         /// <returns>
46         ///     <c>true</c> if property is empty; otherwise, <c>false</c>.
47         /// </returns>
48         /// <example>
49         /// This example shows how you might use this method:
50         /// 
51         /// <code>
52         /// SampleClass sample = new SampleClass();
53         /// 
54         /// if (sample.IsPropertyEmpty())
55         /// {
56         ///        Console.WriteLine("The property is empty");
57         /// }
58         /// else
59         /// {
60         ///        Console.WriteLine("The property contains value " + sample.Property);
61         /// }
62         /// </code>
63         /// </example>
64         public bool IsPropertyEmpty()
65         {
66             bool result = this.IsPropertyNull();
67             if (!result)
68             {
69                 result = (Property.Trim().Length == 0);
70             }
71             return result;
72         }
73     }
74 }

 

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

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

image

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

image

第三步,打开 Sandcastle Help File Builder

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

image

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

image

选择刚刚生成的DLL文件。

image

第四步,修改设置

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

image

第五步,生成文档

image

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

这是最终生成的文档:

image

posted @ 2013-05-07 09:07  史蒂芬King  阅读(287)  评论(0编辑  收藏  举报