关于 XmlDocument 和 XPathDocument 的性能问题

问题描述

最近测试了MSXML的XmlDocument和XPathDocument执行XPath的速度,发现后者比前者快了将近一倍。只知道后者是只读的,而前者还可执行许多的操作,难道这是它们性能差别的原因?XmlDocument为什么比XpathDocument慢这么多呢?谢谢。

解决方案

解决方案二:
学习,帮顶.
解决方案三:
正是因為衹讀
解决方案四:
只读,dataset和datareade一样,只读快。
解决方案五:
但他们都把文件弄到内存中来,并且与楼上的朋友说的比喻不同XmlPathDocument可以来来回回的读,而SqlDataReader不行.

时间: 2024-10-29 05:24:19

关于 XmlDocument 和 XPathDocument 的性能问题的相关文章

为什么LINQ to XML的性能要优于XmlDocument?

一直很忙,压了很多贴,今天发一篇吧.后面的看心情吧. 今天群里有人问如何解析web.config方便,然后我就推荐了Linq to XML,然后就有人说"我宁可XmlDocument,再SeleteNodes和SeleteNode",不要用LINQ之类的,甚至否定EntityFramework等一系列框架,认为这些都是所谓的"懒人技术",都是以牺牲性能为代价的.我在这里想申明一点,没有测试就没有发言权,并不是所有的"懒人技术"都是以牺牲性能为代价

如何最大限度提高.NET的性能

性能 优化 .NET的性能 1)避免使用ArrayList.     因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型.建议使用自定义的集合类型代替ArrayList..net 2.0提供了一个新的类型,叫泛型,这是一个强类型,使用泛型集合就可以避免了封箱和拆箱的发生,提高了性能. 2)使用HashTale代替其他字典集合类型(如StringDictionary,NameValueCollection,HybridC

如何优化.NET的性能

1)避免使用ArrayList.    因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型.建议使用自定义的集合类型代替ArrayList..net 2.0提供了一个新的类型,叫泛型,这是一个强类型,使用泛型集合就可以避免了封箱和拆箱的发生,提高了性能.2)使用HashTale代替其他字典集合类型(如StringDictionary,NameValueCollection,HybridCollection),存放少量数

Asp.Net 程序性能优化的几个方面(转载)

在我们开发Asp.Net过程中,需要注意的一些细节,以达到我们优化程序执行效率. 1.使用值类型的ToString方法  在连接字符串时,经常使用"+"号直接将数字添加到字符串中.这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中.但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中.  使用值类型的ToString方法可以避免装箱操作,从而提高应用程序性能.

asp.net 程序性能优化的七个方面 (c#(或vb.net)程序改进)_实用技巧

1.使用值类型的ToString方法 在连接字符串时,经常使用"+"号直接将数字添加到字符串中.这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中.但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中. 使用值类型的ToString方法可以避免装箱操作,从而提高应用程序性能. int num=1; string str="go"+num.T

ASP.NET应用程序性能优化

asp.net|程序|性能|优化 [把前一段时间给单位项目所做性能优化的一些想法整理了以下,分享交流] ASP.NET 应用程序性能优化 1 前言性能优化的主要目标是提高"并发用户数量","吞吐量","可靠性"这样几个指标. 本质上说,性能优化的工作应该是多方面的,要做到"点面结合.由表及里".比如:从代价的角度来考虑,应尽量做到改动量小,易实施:从用户角度看,应做到快速响应或快速提示:从软件结构的角度看,又要兼顾到系统结构的

也谈ASP.NET应用程序性能优化

[把前一段时间给单位项目所做性能优化的一些想法整理了以下,分享交流]ASP.NET 应用程序性能优化1 前言性能优化的主要目标是提高"并发用户数量","吞吐量","可靠性"这样几个指标.本质上说,性能优化的工作应该是多方面的,要做到"点面结合.由表及里".比如:从代价的角度来考虑,应尽量做到改动量小,易实施:从用户角度看,应做到快速响应或快速提示:从软件结构的角度看,又要兼顾到系统结构的合理性和可扩展性.由此不难发现,在尝试一

XML数据读取方式性能比较(一)

原文:XML数据读取方式性能比较(一) 几个月来,疑被SOA,一直在和XML操作打交道,SQL差不多又忘光了.现在已经知道,至少有四种常用人XML数据操作方式(好像Java差不多),不过还没有实际比较过这些方式各有哪些特点或优劣.正好看到网上也没有这方面的实验,偶来总结一下. 测试开始先读取XML源,用一个比较大的RSS文件链接,复制到项目bin/debug目录下. Stream xmlStream =new MemoryStream(File.ReadAllBytes(path));   一.

Windows7配置以及性能提升方法

据微软官方公布的进程,windows7最晚于10月22日上市,目前出现的Windows7RTM已经提供给OEM厂商.windows7对比vista而言最大的优势就是他的易用性.不过如果你正在使用Windows7,笔者能给你一些建议让你的windows7性能得到显著提升. Windows7性能提升建议一:硬件配置 要玩转Windows7,首先要保证你的电脑配置符合windows7的最基本要求.如果你的Windows7是VISTA升级而来,那么你就可以放心使用Windows7,官方规定的Window