XML Documents and Data
相应的命名空间
- System.Xml
- System.Xml.XPath
- System.Xml.Xsl
- System.Xml.Schema
- System.Xml.Linq
- ……
使用.net的XML料库的一些好处:
- 产出性(productivity)
- 可扩展
- 比如可以从XmlUrlResolver派生出新类标,增加缓存Url到硬盘的能力
- 可加插件的架构
- 一个数据存储,比如XPathDocument或XmlDocument,可以转化为XslCompiledTransform,其输出可以用在多重场景下
- 性能
- 一些XML卡类支持流式数据处理
- XmlReader,前向处理的话最低限度缓存,解析采用拉取模型
- XmlReader,单前向验证
- XPathNavigator,支持游标方式的导览
- XPathDocument ,更高效处理XSLT
- 一些XML卡类支持流式数据处理
- 与ADO.NET紧密结合
- DataSet 是从一个内存中的缓存,可以用来缓存从数据库获取的数据
XML Processing Options
.NET Framework Options
- LINQ to XML (C#),in-memeory(入内存),
- 类似于SQL,直观的文档创建和转化
- 新代码推荐方式
- System.Xml.XmlReader,stream-based(基于数据流)
- 快速,无缓存,单向
- XmlReader.Create创建对象
- XmlReaderSettings修改设置
- System.Xml.XmlWriter,stream-based
- 快速,无缓存,单向
- 类似的,有XmlWriter.Create和XmlWriterSettings
- System.Xml.XmlDocument,in-memeory,
- 支持DOM L1和L2
- 操作比较自由
- System.Xml.XPath.XPathNavigator,In-memory
- 基于游标模型,提供多种编辑选项和导览能力
- XML文档可以被包含再XPathDocument和XmlDocument标的中
- 制度情况下提供绝佳性能
- 适合于XPath或XSLT处理
- XslCompiledTransform,In-memory
- 用于转化XML数据(基于XSL转化)
Win32 and COM-based Options
- XmlLite
- 快速,安全,不做缓存,单进XML解析器
- 基于动态链接库,推荐使用C++
- MSXML
- 基于COM,内置于Windows
- 实现朴素,支持XPath和XSLT
- 支持SAX2事件驱动解析器
其他
(完结)