XML技术是近年来最热门的话题,并且已经广泛应用于编程领域中。
本书主要讲述了XML技术在C#中的应用,同时还介绍了XML的相关技术,如XPath、XSLT和XML Schema等。主要内容包括:XML语法和格式良好的XML,XML命名空间,利用DTD和XML Schema进行XML验证,使用SOAP和Web服务,以及运用ADO.NET进行数据库访问等。本书还用两个案例分析来展示XML的具体应用。
第1章 在C#中使用XML的原因
1.1 使用XML的原因
1.2 什么是XML
1.3 使用XML的对象
1.4 XML标准
1.5 XML如何适应.NET
1.6 小结
第2章 XML概述
2.1 XML的概念
2.2 创建格式良好的XML文档
2.3 验证XML文档的有效性
2.4 小结
第3章 在.NET中使用XML
3.1 XML如何适合.NET
3.2 .NET Framework使用XML
3.3 案例分析—电话薄样式应用程序
3.4 小结
第4章 在.NET中读取XML
4.1 流模型
4.2 XmlTextReader类
4.3 XmlNodeReader类
4.4 XmlValidatingReader类
4.5 小结
第5章 在.NET中编写XML
5.1 利用.NET类编写XML文档
5.2 XmlWriter类
5.3 XmlTextWriter类
5.4 小结
第6章 在.NET中实现DOM
6.1 文档对象模型
6.2 XmlNode类
6.3 XmlDocument类
6.4 案例分析
6.5 小结
第7章 XPath和.NET
7.1 System.Xml.XPath命名空间
7.2 .NET中的XPath类
7.3 自定义导航器
7.4 XML串行化
7.5 小结
第8章 XSLT
8.1 何时使用XSLT
8.2 XSL语言
8.3 使用XSL
8.4 XSL命名空间
8.5 剖析一个简单的XSL示例
8.6 创建XSLT样式表
8.7 小结
第9章 在.NET中使用XSLT
9.1 .NET中的XSLT类
9.2 XslTransform类
9.3 XsltArgumentList类
9.4 小结
第10章 XML模式—背景知识、语言和一般用法
10.1 XML模式(XSD)的任务
10.2 格式良好且有效的XML模式
10.3 什么是模式
10.4 XML模式定义语言
10.5 XML模式数据类型
10.6 模式验证技术
10.7 内联模式
10.8 模式的模块化
10.9 案例分析—创建一个XSD模式
10.10 小结
第11章 XML模式和.NET
11.1 在Visual Studio.NET中利用模式编辑器
11.2 XSD和用xsd.exe进行串行化
11.3 案例分析—改进验证操作
11.4 小结
第12章 XML在ADO.NET中的用法
12.1 ADO.NET概述
12.2 .NET数据提供者
12.3 DataSet类
12.4 XmlDataDocument类
12.5 小结
第13章 Web服务和Remoting
13.1 Web服务的概念
13.2 SOAP协议
13.3 WSDL
13.4 .NET Remoting
13.5 案例分析和Web服务
13.6 小结
第14章 案例分析: 一个简单的新闻门户网站
14.1 应用程序概述
14.2 应用程序的体系结构
14.3 业务层
14.4 表示层
14.5 部署
14.6 利用新闻门户网站应用程序
14.7 主页面
14.8 改进的建议
14.9 小结
附录A 模式数据类型参考
附录B XSL支持
欢迎阅读本书。近年来,可扩展标记语言(XML)已经成为应用程序开发中使用最多的专业术语。如今,Microsoft已经将XML内置到其.NET Framework核心中。本书主要是向希望了解XML用途的开发人员讲授XML知识(和相关的技术,例如XPath、XSLT和XML Schema)。为了引导读者学习基本的XML技巧,我们假定您已经掌握了一些基本的编程技巧(这里指C#中一些基本的编程知识),有运用VisualStudio.NET的经验,可以将这些技术运用到新技术中。
在本书中,读者不仅可以很好地理解XML的概念,知道如何和何时在C#中使用它,还可以掌握如何使用XML构建在单个台式电脑、单个Web服务器上运行的应用程序或分布式、多平台的Web服务,使用以前的技术难以实现这些功能。
为了加深您对核心概念的理解,本书列举了许多单个示例和两个案例分析。这些例子都是精心选择的,以演示XML的功能,帮助您在开始利用这一技术时理解其基本概念。
首先看一下基于XML的不同方法如何用于地址簿应用程序的开发。在本书中,项目开发的复杂度会随着读者知识的增加而加大。然后,我们用一章来讲述在实现基于Web的新闻门户站点的过程中XML和SQL Server数据库的运用。
0.1 本书主要内容
XML语法和格式良好的XML
使用XML命名空间
利用XSLT转换XML
使用DTD和XML Schema进行XML验证
使用SOAP和Web服务
使用ADO.NET为应用程序添加数据库访问功能
使用SQLXML为SQLServer2000启用XML支持
0.2 本书读者对象
本书主要帮助开发人员了解利用XML能实现什么功能。不过,本书不是针对初学者的,它假定读者具备下列知识:
·一些C#的知识——本书并不需要特别高级的C#功能,但读者需要熟悉C#的基本语法。
·知道如何运用Visual Studio .NET。
0.3 使用本书的条件
本书中的示例要用Visual Studio .NET专业版或标准版和SQL Server 2000或MSDE来运行,操作系统需要是Windows 2000或Windows XP专业版。
示例的完整源代码可从http://www.wrox.com站点上下载。
0.4 用户支持和反馈
我们一贯重视读者的意见,并想知道每位读者对本书的看法,包括读者喜欢和不喜欢的内容,以及读者希望我们下一次完善的地方。您可以通过发送电子邮件(地址为feedback@wrox.com)来向我们反馈意见。请确保在反馈信息中提到本书的ISBN和书名。
0.4.1 源代码和更新
在学习本书中的示例时,您也许倾向于手动输入所有代码。许多读者都愿意这样做,主要是因为这是一种能够帮助我们熟练掌握所需编码技巧的好途径。不过,无论您是否希望手动输入所有示例代码,我们都将在Wrox.com站点上放置本书示例的所有源代码,以满足那些希望得到源代码的读者的要求。
当您访问Wrox公司站点(地址为http://www.wrox.com/)时,通过Search工具或书名列表,可以方便地定位需要的书目。然后,单击Code列中的Download超链接,或者单击本书的详细信息页面中的Download Code超链接,就可以下载相应的示例代码。
从我们的站点上下载的可用文件都是使用WinZip压缩过的文档。把附件保存到本地磁盘上的文件夹中后,需要使用一个解压缩程序(例如WinZip或PKUnzip)来解压缩文件。在解压缩文件时,通常将代码解压缩到每一章所在的文件夹中。在解压缩的过程中,应确保解压缩程序已经选中Extract to(或对等选项)选项并使用原有文件夹名作为解压目标文件名。
即使您喜欢手动输入示例代码,但仍然可以使用我们的源代码来检验可获得的结果——如果您想自己可能存在输入错误时,示例源代码可以帮助您验证错误,得到正确结果。如果您不喜欢手动输入示例代码,那就需要从我们的站点下载源代码。总之,源代码有利于您更新和调试示例程序。
0.4.2 勘误表
我们已经尽最大努力确保本书中的文本和代码没有错误,但是错误仍然在所难免。如果您发现本书存在错误,例如拼写错误或不正确的代码段,请反馈信息给我们,我们将不胜感激。勘误表的发送可以节约其他读者学习本书的时间,而且能够帮助我们提供更高质量的信息。请将您的反馈信息以电子邮件的形式发送到support@wrox.com,它们将被检查,如果正确,将被粘贴到本书的勘误页面上,或者在本书的后续版本中使用。
要在我们的站点上找到勘误表,请访问http://www.wrox.com/,并通过Search工具或者书名列表轻松定位本书页面。然后单击Book Errata超链接即可,该链接位于本书的详细信息页面中。在这个页面中,您可以看到所有已经由编辑检查并提交的勘误内容。也可以通过单击Submit Errata链接,通知我们您已经发现的勘误内容。
0.4.3 技术支持
如果您希望直接向详细了解本书的专家咨询本书中的问题,可以发送电子邮件到support@wrox.com,要求在邮件的主题栏中带上本书的书名和ISBN(国际标准图书编号)的后4位数字。一封典型的电子邮件应包括下面的内容:
●在主题栏中必须有本书的书名、ISBN的后4位数字(本书是6284)和问题所在的页码。
●正文部分应包括读者的名字、联系信息和问题。
我们将不处理无用邮件,因为我们仅仅需要有用的详细资料,以便可节约您和我们的时间。当您发送一个电子邮件信息时,它将经过下面一系列支持:
●客户支持:首先,您的信息将被递送到我们的客户支持人员手中,并由他们阅读。他们备有常见问题的文件,并将立即回答有关本书或者Web站点的任何常见问题。
●编辑支持:接着,一些有深度的问题将被送到对本书负责的技术编辑手中,他们在程序设计语言或者特定的产品上有着丰富的经验,能够回答相关主题的详细技术问题。问题一旦得到解决,编辑会及时将勘误表发送到我们的Web站点上。
●作者支持:最后,如果编辑不能回答您的问题(这种情况很少发生),他们将求助于本书的作者。我们将尽量使作者免受干扰,以便不影响其写作。然而,我们也非常高兴转寄给他们一些特殊的问题。所有Wrox公司的作者都为他们的书提供技术支持。作为回应,他们将发送电子邮件给用户和编辑,进而使所有的读者受益。
0.4.4 p2p.wrox.com童占点
为了便于作者和其他人讨论,请加入到P2P站点的邮件列表中,除了一对一的邮件支持系统外,我们独特的系统将programmer to programmer TM(由程序员为程序员而著)的编程理念与邮件列表、论坛、新闻组等其他服务相联系。如果您向P2P发送一个问题,应该相信它一定会被登录邮件列表的Wrox公司作者和其他相关专家发现。无论您是在阅读本书,还是在开发自己的应用程序,都可以在p2p.wrox.com站点中找到许多对自己有所帮助的邮件列表。
按照下面的步骤可以预订一个邮件列表:
(1)登录http://p2p.wrox.com/站点,从左边的菜单栏选择一个适当的类别。
(2)单击您希望加入的邮件列表。
(3)按照说明订阅并填写自己的邮件地址和密码。
(4)回复您收到的确认邮件。
(5)使用预订管理程序加入更多的邮件列表并设置自己的邮件首选项。