书籍详情

Microsoft .NET XML程序设计

Microsoft .NET XML程序设计

作者:(意)Dino Esposito著;宁建平 等译

出版社:机械工业出版社

出版时间:2003-09-01

ISBN:9787111124795

定价:¥49.00

购买这本书可以去
内容简介
  本书由国际知名的微软技术专家撰写,主要探讨由.NET框架所提供的XML工具集。全书共分四个部分,第一部分深入讨论在.NET平台中实现XML的各个核心类,同时介绍读取器和编写器、数据验证以及XML模式方面的一些例子和参考信息;第二部分讨论XML数据操作,包括XMLDOM、XPath、XSLT等。第三部分介绍XML与数据访问,讲述XML与数据库之间的互操作;最后集中讨论应用程序与互操作性,并简要讨论SQLServer2000及其XML扩展、.NET远程化、XMLWeb服务,并包括两个介绍XML配置文件、XML数据岛以及浏览器/部署托管控件的章节。本书条理清晰,实例丰富,适合学习XML的开发人员阅读,尤其适合.NET框架下的XML开发人员参考。大约5年前,当我刚完成我的第一本书后,出版商向我提出了一个相当有吸引力的建议:“为什么不着手写一本新书呢”?现在我知道,所有的出版商都会提这类建议,但在那时它确实很诱人,并且我认为这里面还含有欣赏的成分。“看起来你在新技术方面干得很不错,”他们说道:“我们希望你能够考虑一下XML这个新的题材”。那是我第一次听说XML,XML那时还不是W3C推荐规范。但当时却发生了很多的事情,以至于很长时间后我才开始着手XML。可以确信,在编写本书时,已经有成千上万的IT经理们正在以这样或那样的方式进行包含XML的各种演示。几年前,在一个软件讨论会上,我曾听到一位产品经理突出强调了在他所推荐的产品套件中XML所起的关键作用。在说了最初的十多句关于“如果没有XML,将来都不知会是什么样子”的话后,就有一个听众提出了一个很坦率的问题:“存不存在不使用XML的地方呢?”推荐者的激情使得现场的每个听众都相信:没有XML的强大功能,程序设计简直不可能再进行了。结果,我们再一次从演讲者的回答中取消了疑虑:“哦,在编译器中就不使用XML。”先不管对XML所做的广告,XML确实是软件中的关键元素。如今,XML不仅仅是一种软件技术,它还是各种编程的基础组成元素,其本质就像水与空气对于我们每个人一样。现实中,人类要求以某种方式利用水和空气,同样,程序设计形式的“生命”必须取得软件工具的支持才能有效应,并发挥出互操作、适应性以及信息方面的潜在能力。对于XML,最重要的莫过于解析器了。XML解析器读取XML文本,并输出内容的内存表示。尽管可以以各种字符集编码,但XML解析器的输入总是表现为无格式的平台无关的文本,然而,XML解析器的输出却严格地束缚在底层硬件和软件平台上。根据操作系统与所选的编程环境,XML解析器可以生成COM对象、Java类或JScript类。然而,不管输出种类如何,最终结果都是可编程形式的XML数据。伙伴应用程序需要增加集成与配合的程度,这使交换XML代码越来越复杂,经常需要使用更专用的语言来解析,如SOAP以及XPath。结果,XML编程需要特殊的工具来读写这些语言,更妙的是,那些工具已经紧密地集成到了某种编程框架中。有效的XML编程要求能够以功能更强大的方式生成XML文档,而不仅仅是连接字符串。XMLAPI必须有足够的扩展性能,适应可插入技术并定制各个功能。并且XML必须是可串行化的,与数据存储和交换的其他元素也有良好的集成,包括数据库、复杂数据类型(数组、表以及列表)以及可视化用户界面元素。简单地说,XML必须不再是拴在核心框架中的一个独特的API,而是融入这个大家族中的完全一个成员。很幸运,XML在Microsoft.NET框架中正好是完全集成的。本书中介绍的就是.NET框架中的XML编程。本书探讨由.NET框架提供的XML工具集。XML遍布.NET框架各处,从远程化到Web服务,从数据访问到配置。本书第一部分深入讨论在.NET平台中实现XML的各个关键类,同时介绍了读取器和编写器、验证以及模式方面的一些例子和参考信息。接着讨论.NET版本的XPath、XSLT和XMLDOM方面的内容。本书最后集中讨论数据访问以及互操作性,并简要讨论SQLServer2000及其XML扩展、.NET远程化及XMLWeb服务方面的内容。另外还有两个介绍XML配置文件、XML数据岛以及浏览器/部署托管控件方面内容的章节。
作者简介
  DinoEsposito:是Web开发技术方面杰出的顾问与培训专家。以意大利的罗马为中心,他经常在MicrosoftTechEd、DevConnections以及WinSummit等行业盛会上发表演讲。除了编著各种程序设计方面的书籍外,还经常在杂志上发表文章。
目录
译者序
前言
第一部分 .NET框架中的XML核心类
第1章 .NET XML解析模型 
1.1 .NET框架中的XML 
1.1.1 相关的XML标准 
1.1.2 核心解析类 
1.1.3 XML和ADO.NET 
1.1.4 应用程序配置 
1.1.5 互操作性 
1.2 从MSXML到.NET框架类 
1.2.1 COM和.NET框架的XML核心服务 
1.2.2 在.NET框架中使用MSXML 
1.3 NET框架的XML API 
1.3.1 .NET框架的读取器和编写器 
1.3.2 类似游标的方法 
1.3.3 XML读取器 
1.3.4 XML编写器 
1.3.5 .NET中的XML文档对象API 
1.3.6 XPath表达式和XSLT 
1.4 小结 
1.5 进阶阅读 
第2章 XML读取器 
2.1 读取器编程接口 
2.1.1 XmlReader类 
2.1.2 专用读取器类
2.2 使用XmlTextReader类解析 
2.2.1 访问节点 
2.2.2 访问属性 
2.2.3 处理XML异常 
2.2.4 处理空白 
2.2.5 解析实体 
2.2.6 解析外部引用 
2.2.7 读取大流 
2.2.8 NameTable对象 
2.2.9 用.NET工具设计SAX解析器 
2.3 解析XML片断 
2.3.1 解析格式规范的XML字符串 
2.3.2 片断与解析器上下文 
2.4 编写定制的XML读取器 
2.4.1 将数据结构映射到XML节点 
2.4.2 将CSV文件映射到XML 
2.4.3 实现CSV-to-XML读取器 
2.4.4 运行的CSV XML读取器 
2.5 读取器与XML读取器 
2.6 小结 
2.7 进阶阅读 
第3章 XML数据验证 
3.1 XmlValidatingReader类 
3.1.1 支持的验证类型 
3.1.2 XmlValidatingReader编程接口 
3.1.3 使用XmlValidatingReader 
3.2 验证处理内幕 
3.2.1 增量式解析 
3.2.2 模式高速缓存 
3.2.3 验证XML片断 
3.3 使用DTD 
3.3.1 开发DTD文法 
3.3.2 根据DTD进行验证 
3.3.3 DTD使用与折衷 
3.4 使用XDR 模式 
3.4.1 XDR 模式概览
3.4.2 根据XDR进行验证 
3.5 使用XML模式API 
3.5.1 什么是模式 
3.5.2 定义XSD 模式
3.5.3 .NET 模式对象模型
3.5.4 根据XSD文档进行验证 
3.6 小结 
3.7 进阶阅读 
第4章 XML编写器 
4.1 XML编写器编程接口 
4.1.1 XmlWriter基类 
4.1.2 XmlTextWriter类
4.2 编写格式规范的XML文本 
4.2.1 构建XML文档 
4.2.2 格式化文本 
4.2.3 支持命名空间
4.2.4 写编码数据 
4.2.5 XML验证编写器 
4.3 编写定制的XML编写器 
4.3.1 实现ADO记录集XML编写器 
4.3.2 XmlRecordsetWriter编程接口 
4.3.3 测试XmlRecordsetWriter类 
4.3.4 比较编写器与XML编写器 
4.4 读/写XML流解析器 
4.4.1 设计读取器之上的编写器 
4.4.2 读/写操作的内嵌支持 
4.4.3 设计XmlTextReadWriter类 
4.4.4 测试XmlTextReadWriter类 
4.4.5 具有完全访问权限的CSV编辑器 
4.5 小结 
4.6 进阶阅读 
第二部分 XML数据操作
第5章 XML .NET文档对象模型 
5.1 XML DOM编程接口 
5.1.1 XmlDocument类 
5.1.2 基类XmlNode 
5.2 使用XML文档 
5.2.1 装载XML文档
5.2.2 提取XML DOM子树 
5.2.3 更新文本和标记 
5.2.4 通过查询选择节点
5.3 创建XML文档 
5.3.1 添加节点 
5.3.2 附加属性 
5.3.3 持久保存更改 
5.4 扩展XML DOM 
5.4.1 定制节点类 
5.4.2 构建“热插拔的”XML DOM 
5.5 小结 
5.6 进阶阅读 
第6章 XML查询语言和导航 
6.1 什么是XPath 
6.1.1 XPath查询上下文 
6.1.2 位置路径 
6.1.3 文档间的链接 
6.2 XML DOM中的XPath 
6.2.1 XML DOM节点检索API 
6.2.2 XPath计算器示例 
6.3 .NET XPath导航API 
6.3.1 类XPathNavigator
6.3.2 XPath导航器和XMLreader 
6.3.3 XPathNavigator编程接口 
6.3.4 .NET框架中的XPath表达式
6.3.5 排序节点集 
6.3.6 XPath数据存储 
6.4 XPath迭代器 
6.4.1 XPathNodeIterator类 
6.4.2 访问选中的节点 
6.5 小结 
6.6 进阶阅读 
第7章 XML数据转换 
7.1 XSLT究竟是什么 
7.1.1 XSLT模板编程 
7.1.2 XSLT指令 
7.1.3 从XML到HTML 
7.1.4 从模式到模式
7.2 .NET框架的XSLT处理器 
7.2.1 快速XSLT转换器 
7.2.2 XslTransform类 
7.2.3 XSLT处理器内幕 
7.3 应用转换 
7.3.1 设计注意事项 
7.3.2 异步转换 
7.3.3 输出格式 
7.3.4 传递和检索参数 
7.4 练习例子 
7.4.1 将DataSet对象转换成Recordset对象 
7.4.2 XML Web服务器控件 
7.5 XSLT扩展对象 
7.5.1 处理嵌入脚本 
7.5.2 向样式表传递托管对象 
7.6 小结 
7.7 进阶阅读 
第三部分 XML和数据访问
第8章 XML和数据库 
8.1 从数据库读取XML数据 
8.1.1 SELECT语句的XML扩展
8.1.2 FOR XML的局限性 
8.1.3 客户端XML格式化 
8.1.4 创建XML视图 
8.2 XML数据读取器 
8.2.1 读取XML查询 
8.2.2 ExecuteXmlReader的内幕 
8.2.3 读取文本字段 
8.2.4 用于数据读取器的XML读取器 
8.2.5 用OLE DB数据提供者使用XML 
8.3 断开的XML数据读取器 
8.3.1 XmlDataDocument类 
8.3.2 与DataSet对象同步 
8.3.3 XML数据保真 
8.4 将XML数据写到数据库中 
8.4.1 OPENXML行集提供者 
8.4.2 XML 批量加载 
8.4.3 Updategram模板
8.5 SQLXML托管类 
8.5.1 SqlXmlCommand类 
8.5.2 SqlXmlParameter类
8.5.3 SqlXmlAdapter类 
8.6 小结 
8.7 进阶阅读 
第9章 ADO.NET XML数据串行化 
9.1 串行化DataSet对象 
9.1.1 适用于XML的DataSet对象嵌入式API 
9.1.2 将数据写为XML 
9.1.3 写模式信息 
9.1.4 定制XML表示
9.1.5 表示数据关系
9.2 串行化过滤视图
9.2.1 串行化DataTable对象 
9.2.2 DataView对象 
9.3 二进制数据串行化
9.3.1 常规的.NET框架串行化 
9.3.2 定制的二进制串行化 
9.4 从XML装载DataSet对象 
9.4.1 构建DataSet对象 
9.4.2 读取模式信息 
9.4.3 推出模式信息 
9.4.4 从定制读取器进行装载 
9.5 小结 
9.6 进阶阅读 
第10章 有状态数据串行化 
10.1 DiffGram格式概述 
10.1.1 当前数据实例 
10.1.2 DiffGram格式注释 
10.1.3 初始数据区段 
10.1.4 跟踪未决的错误
10.2 DiffGram浏览器应用程序 
10.2.1 将DataSet对象持久保存到DiffGram中 
10.2.2 从DiffGram中加载DataSet对象 
10.2.3 DiffGram中的模式信息 
10.3 保存-恢复应用程序 
10.3.1 建立应用程序 
10.3.2 创建本地数据存储 
10.3.3 检查和拒绝更改 
10.3.4 提交更改 
10.4 小结 
10.5 进阶阅读 
第四部分 应用程序互操作性
第11章 XML串行化 
11.1 对象串行化过程 
11.1.1 SOAP格式化器 
11.1.2 从SOAP串行化到XML串行化 
11.2 XML串行器 
11.2.1 编程接口
11.2.2 将对象串行化到XML 
11.2.3 将XML数据反串行化到对象 
11.3 整形XML输出 
11.3.1 XML串行化属性 
11.3.2 覆盖属性 
11.4 将SQL服务器数据映射到类 
11.4.1 覆盖类名 
11.4.2 覆盖类属性
11.4.3 将覆盖和事件混合 
11.4.4 填充集合属性 
11.5 XML串行器 
11.5.1 临时程序集 
11.5.2 串行化编写器和读取器 
11.6 小结 
11.7 进阶阅读 
第12章 .NET远程处理系统 
12.1 .NET框架中的进程间通信 
12.1.1 .NET远程处理是更好的DCOM 
12.1.2 .NET远程处理是什么 
12.1.3 应用程序域 
12.2 可远程处理对象
12.2.1 按值编组对象
12.2.2 按引用编组对象 
12.3 建立远程服务 
12.3.1 编写数据提供者类 
12.3.2 编写远程服务组件 
12.3.3 发布远程服务组件 
12.3.4 服务器端激活 
12.3.5 客户端激活 
12.3.6 选择合适的激活模式 
12.3.7 内存管理 
12.4 调用远程服务
12.4.1 配置调用程序 
12.4.2 编写客户端组件
12.5 小结 
12.6 进阶阅读 
第13章 XML Web服务 
13.1 用于Web服务的.NET框架基础结构 
13.1.1 简单对象访问协议 
13.1.2 IIS支持 
13.1.3 WebService类 
13.2 构建.NET Web服务
13.2.1 展示Web方法 
13.2.2 Web方法的SOAP消息格式化 
13.2.3 销售报告Web服务 
13.2.4 Web方法调用 
13.3 构建.NET 框架Web服务客户端 
13.3.1 代理类 
13.3.2 通过脚本调用Web服务 
13.4 比较.NET远程处理与Web服务 
13.4.1 哪一个先出现 
13.4.2 Web服务的问题
13.5 小结 
13.6 进阶阅读 
第14章 客户端XML 
14.1 IE中的XML支持 
14.1.1 数据岛标签 
14.1.2 MSXML解析器的作用 
14.1.3 嵌入XML数据的其他方法 
14.1.4 在ASP.NET中创建数据岛 
14.2 在IE中嵌入.NET框架组件 
14.2.1 为HTML页构建Windows Forms控件 
14.2.2 数据显示定制控件 
14.3 把它放到一起 
14.3.1 串行化DataSet 对象到数据岛 
14.3.2 从MSXML文件到.NET XML文件 
14.4 小结 
14.5 进阶阅读 
第15章 .NET框架应用程序配置 
15.1 配置文件 
15.1.1 用于配置设置的XML 模式 
15.1.2 机器配置文件 
15.1.3 安全配置文件 
15.1.4 应用程序配置文件 
15.2 管理配置设置 
15.2.1 ConfigurationSettings类 
15.2.2 AppSettingsReader类 
15.3 创建新的配置段 
15.3.1 声明新区段 
15.3.2 区段处理器的类型 
15.3.3 区段处理器 
15.3.4 定制属性名称
15.4 为数据定制XML 模式 
15.4.1 创建DataSet区段处理器 
15.4.2 实现DataSet区段处理器 
15.5 小结 
15.6 进阶阅读 
后记
猜您喜欢

读书导航