网站大量收购闲置独家精品文档,联系QQ:2885784924

关于在.NET平台下XML数据访问方法选择研究.docVIP

关于在.NET平台下XML数据访问方法选择研究.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于在.NET平台下XML数据访问方法选择研究

关于在.NET平台下XML数据访问方法选择研究   摘要:首先对.NET平台下访问XML数据的四种不同的方法进行了叙述,分析了四种方法的使用步骤,并比较了这些方法在不同情况下使用的优缺点,最后阐述了选择不同访问方法应遵循的条件。   关键词:XML;ADO;SQLXML;SqlDataReader;ADO.NET;数据集      1 前言      由于历史及其他的一些原因,很多企业现在都拥有多种业务系统,这样就导致了企业的信息孤岛现象越来越严重,企业中充斥着各种格式、不同版本的信息,信息资源浪费的问题也就凸显出来。为了解决这个问题,迫切需要将数据规范化和标准化,而XML正是应时出现的这样一种规范。XML是由互联网联合组织创建的一组规范,目前XML已被大量应用于异构系统间的数据交换、数据集成、数据共享,将同一数据以不同的形式表现出来等[1]。   随着XML的大量使用,以及各种新兴的开发工具的推出,XML数据的访问方法越来越灵活多样,而这些访问方法也正朝着简单易操作的方向发展。   在.NET平台中包含四个XML数据访问接口:ActiveX Data Objects (ADO) 、SQLXML、SqlDataReader和ADO.NET,其中SqlDataReader和ADO.NET是两种较新的访问方法。本文将以连接数据库SQL Server为例,据此来分析比较这四种不同XML数据访问方法的性能,以决定在具体应用时应使用哪种访问方法。      2 访问方法      2.1 ADO方法   早在ADO2.1时,Microsoft就添加了使用结果集转换为XML的功能,这样就可以将一个结果集保存为一个XML文件。使用ADO从数据库获得XML数据的时候首先需要创建并打开一个数据库连接,然后创建一个Command对象,接着需要得到由Command对象执行Sql语句得到的RecordSet对象,RecordSet对象中便存储着从数据库中获得的数据,要将结果集转换为XML,只需在调用RecordSet对象的Save()方法时将数据以XML的格式保存即可。   2.2 SQLXML方法   SQLXML托管类属于SQLXML 3.0功能包,而SQLXML 3.0功能包提供改进的性能以扩展SQL Server 2000的XML功能。SQLXML托管类是.NET Framework的本地类,它们可以非常方便地向SQL Server数据库接收和发送XML数据。3.0以前的SQLXML功能包版本有一种扩展性的问题,因为它不是在客户端构造XML,而是将在数据库服务器端构造好的XML返回客户端,这样一来,要返回的XML流就比原来SQL Server返回的二进制数据流大很多。   不过现在的3.0版本允许SQLXML将数据流作为二进制数据从服务器端返回给客户端,然后在客户端上将二进制数据转换成XML。在3.0版本的SQLXML包中实现这个特性时需要设置SqlXmlCommand对象的ClientSideXml属性为真。这时程序可使用的SELECT语句中就可以带有FOR XML子句,当然在SQLXML托管类给SQL Server发送SQL语句前会先将FOR XML子句去掉。这样数据库服务器就可以以二进制格式返回客户端数据了。而托管类会将从服务器返回的这些二进制数据再转化为XML格式。   2.3 SqlDataReader方法   SqlDataReader类提供一种从SQL Server数据库读取行的只进流的方式[2],即使用一个连续只读的指针来进行数据的存取,这种数据访问方式是进行SQL Server数据存取的最快的方式。但由于SqlDataReader类并不能直接支持XML类型的数据,所以就必须自己编写代码来完成XML转换或者运行一个返回XML的查询过程,比如说使用For XML查询语句。   2.4 ADO.NET方法   相对于ADO对XML的有限的支持,ADO.NET新增了很多功能,可以说,ADO. NET是ADO升级版本,它为开发人员提供了一种全新的XML数据访问方法,在提高访问效率的同时还能大幅简化工作量。   ADO.NET提供了连接模式和非连接模式两种数据访问模式。其中连接模式和ADO使用的模式相同,而非连接模式是.NET独有的也是为.NET所推荐的。在该模式下,一旦应用程序得到所需数据,就会同数据源断开连接,而数据在内存中以XML形式存在,这就使此模式具有更大的可执行性和灵活性。非连接模式的核心部分就是ADO.NET中的DataSet数据集。DataSet类位于System.Data命名空间中,可以将DataSet理解为一个复杂的关系数据结构,它内建对XML序列化的支持。在非连接模式下工

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档