.NET文档生成工具ADB使用图文教程
- 类型:编程辅助大小:2.7M语言:中文 评分:1.8
- 标签:
ADB2.3使用指南
ADB2.3使用方法如下图所示:
(1)主界面:

(2)批量选择:

4.生成的文档
(1)命名空间页面:

2.类型页面:

3.成员页面:


5.开发自定义文档生成器
ADB2.3支持加载用户自定义的文档生成器,用户可根据自己的需求开发文档生成器,下面以开发自定义文档生成器MyBuilder为例,说明如何开发自定义文档生成器:
⑴目标:
开发一个自定义文档生成器,该文档生成器在ADB默认文档生成器基础上扩展以下功能:
a.在XML文档注释可以用插入图片;
b.在类型页面和成员页面中增加一个名称为“自定义节”的内容节。
⑵开发步骤
a.点击菜单 工具->生成自定义文档解决方案->扩展XML文档注释,在弹出的对话框中输入文档生成器名称

b.打开工程中的MyBuilder.cs文件,输入以下代码
using System;
using System.Collections.Generic;
using System.Text;
using ADB.Factories;
using Microsoft.VisualBasic.FileIO; namespace CustomBuilder
{
///
/// MyBuilder
///
public class MyBuilder : ADB.Factories.MSDNStyleCHMDocumentBuilder
{
static PageSection[] _memberPageSections, _typePageSections; public MyBuilder(IGetData data, IInteract interact)
: base(data, interact)
{
//base.MemberPageSections为页面原有的节,将自定义节插入到页面的最后
_memberPageSections = new PageSection[base.MemberPageSections.Length + 1];
base.MemberPageSections.CopyTo(_memberPageSections, 0);
_memberPageSections[base.MemberPageSections.Length] =
new PageSection("自定义节", PageSectionType.FromXML, "CustomSection"); //base.MemberPageSections为页面原有的节,将自定义节插入到页面的最后
_typePageSections = new PageSection[base.TypePageSections.Length + 1];
base.TypePageSections.CopyTo(_typePageSections, 0);
_typePageSections[base.TypePageSections.Length] =
new PageSection("自定义节", PageSectionType.FromXML, "CustomSection");
} //重写基类的MemberPageSections属性
public override PageSection[] MemberPageSections
{
get
{
return _memberPageSections;
}
} //重写基类的TypePageSections属性
public override PageSection[] TypePageSections
{
get
{
return _typePageSections;
}
} protected override string GetTag(System.Xml.XmlElement elem, string xmlFile)
{
switch (elem.Name)
{
case "CustomSection":
{
//生成"自定义节"的内容
return GetInnerTags(elem, xmlFile);
}
case "image":
{
StringBuilder tag = new StringBuilder();
string src = elem.GetAttribute("src");
if (!string.IsNullOrEmpty(src))
{
try
{
//将图片拷贝到生成页面的目录中
//(通过属性HtmlFileDirectory获取保存页面的目录)
FileSystem.CopyFile(
xmlFile + "\\" + src,
HtmlFileDirectory + "\\" + src,
true
);
}
finally
{
}
//生成HTML标志
tag.AppendFormat("<img src='{0}'/>", src);
}
return tag.ToString();
}
default:
{
//其它标志由基类处理
return base.GetTag(elem, xmlFile);
}
}
}
}
}
c.点击调试按钮调试自定义文档生成器

⑶测试
由于测试的类及其XML注释:
namespace ClassLibrary1
{
///
/// Class摘要
///
///
/// 自定义的节
///
<image src="1.gif"/>
/// public class Class1 { }}
用自定义文档生成器MyBuilder生成的文档

⑷让ADB启动时自动加载文档生成器
在ADB目录下新建目录MyBuilder,并将MyBuilder.dll和MyBuilder.builder拷贝到该文件夹中
ADB2.3支持的注释标记

.NET文档生成工具ADB使用图文教程的更多相关文章
- .NET平台开源项目速览(4).NET文档生成工具ADB及使用
很久以前就使用ADB这个工具来生成项目的帮助文档.功能强大,在学习一些开源项目的过程中,官方没有提供CHM帮助文档,所以为了快速的了解项目结构和注释.就生成文档来自己看,非常好用.这也是一个学习方法吧 ...
- 【C#附源码】数据库文档生成工具支持(Excel+Html)
[2015] 很多时候,我们在生成数据库文档时,使用某些工具,可效果总不理想,不是内容不详细,就是表现效果一般般.很多还是word.html的.看着真是别扭.本人习惯用Excel,所以闲暇时,就简单的 ...
- 微软开源全新的文档生成工具DocFX
微软放弃Sandcastle有些年头了,微软最近开源了全新的文档生成工具DocFX,目前支持C#和VB,类似JSDoc或Sphinx,可以从源代码中提取注释生成文档之外,而且还有语法支持你加入其他的文 ...
- DBImport v3.44 中文版发布:数据库数据互导及文档生成工具(IT人员必备)
前言: 距离上一个版本V3.3版本的文章发布,已经是1年10个月前的事了. 其实版本一直在更新,但也没什么大的功能更新,总体比较稳定,所以也不怎么写文介绍了. 至于工作上的事,之前有半年时间跑去学英语 ...
- (转)Doxygen文档生成工具
http://blog.csdn.net/lostaway/article/details/6446786 Doxygen 是一个支持 C/C++,以及其它多种语言的跨平台文档生成工具.如同 Java ...
- Sandcastle----强大的C#文档生成工具
最近客户索要产品的二次开发类库文档,由于开发过程中并没有考虑过此类文档,而且项目规范比较,持续时间比较长,经手人比较多,还真是麻烦,如果人工制作文档需要是一个比较大的工程.还好有这个文档生成工具,能够 ...
- 使用Objective-C的文档生成工具:appledoc
使用Objective-C的文档生成工具:appledoc 前言 做项目的人多了,就需要文档了.今天开始尝试写一些项目文档.但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.象 Ja ...
- 使用Objective-C的文档生成工具
前言 做项目的人多了,就需要文档了.今天开始尝试写一些项目文档.但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.象Java语言本身就自带javadoc命令,可以从源码中抽取文档.今 ...
- 文档生成工具doxygen+图像生成工具GraphViz
文档生成工具doxygen+图像生成工具GraphViz 虽然jdk自带的javadoc也很好用,不过使用doxygen+GraphViz 的组合可以生成许多强大的图(类图.协作图.文件包含/被包含图 ...
随机推荐
- Oracle导入导出命令
//导出 exp techrpt_data/techrpt_data@orcl file=d:\_临时文件\techrpt_data.dmp owner=techrpt_data //导入 imp t ...
- 解决android sdk 无法更新
今天更新sdk,遇到了更新下载失败问题: Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xmlFetched ...
- XPath的使用
最近在mybatis的时候,发现源码中出现了这样的一句代码 private void configurationElement(XNode context) { try { String namesp ...
- objective-c 宏定义UIAlertController公用方法
IOS的方法经常都有更迭,以前弹出框使用 AlertView,现在使用UIAlertController AlertView的宏定义 #define showMessage(__MESSAGE__) ...
- .net下mysql存储过程返回自定义值(原创)
ado.net方法 public static string ExecuteQueryProc(string sConnStr, string sSql, Hashtable args) { MySq ...
- RSA加密解密(python版)
RSA的算法涉及三个参数,n.e.d. 其中,n是两个大质数p.q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度. e1和d是一对相关的值,e可以任意取,但要求e与(p-1)*(q-1)互质: ...
- 实体类的枚举属性--原来支持枚举类型这么简单,没有EF5.0也可以
通常,我们都是在业务层和界面层使用枚举类型,这能够为我们编程带来便利,但在数据访问层,不使用枚举类型,因为很多数据库都不支持,比如我们现在用的SqlServer2008就不支持枚举类型的列,用的时候也 ...
- 20个免费的 JavaScript 游戏引擎分享给开发者
这篇文章收集了20个免费的 JavaScript 游戏引擎分享给开发者.这些游戏引擎能够帮助游戏开发人员更快速高效的开发出各种好玩的游戏. 使用 HTML5.CSS3 和 Javascript 可以帮 ...
- 10个漂亮的响应式的食品 WordPress 美食模板
您是否拥有一个餐厅,酒吧,咖啡馆,小酒馆,比萨饼店?如果答案是肯定的,请确保您在网上也提供服务.为了使您的工作更轻松,我们选择了一些新的和独特的餐厅主题,覆盖了范围很广的食品企业.这些主题提供了很多很 ...
- reactjs学习一(环境搭配react+es6+webpack热部署)
reactjs学习一(环境搭配react+es6+webpack热部署) 本文的源码在这里下载 https://github.com/tianxiangbing/webpack-study 或者使 ...