open xml开发系列课程平台上_第1页
open xml开发系列课程平台上_第2页
open xml开发系列课程平台上_第3页
open xml开发系列课程平台上_第4页
open xml开发系列课程平台上_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.NET平台下的XML先开发工程中达金桥技术服议XML.NET平台下的XMLW3C标准在.NETFramework的应用MSXML和System.Xml的比较W3C标准在.NETFramework中的应MSXML和System.XmlMSXML XML1.0XML DOMLevel DOMLevel2 XML System.Xml2.0新特XML在.NET2.0中的优势体现在性能方Reading/writing2xasfastXSLT3xasfastXml‐Schemaupto25percent可用性,兼容性和遵从一些beta版的特性被议XMLXML的读基于流的方使用DOM进行基于流的读

基于流的读ReadingXMLwithanstringxmlNamespace="ht XmlReaderSettingssettings=newXmlReaderSettings();ments=true;settings.ProhibitDtd=true;using(XmlReaderreader=XmlReader.Create("sample.xml",{while{if(reader.IsStar ement()&&reader.LocalName=="orderItem"){ ty",xmlNamespace); ty=reader.ReadElementContentAsInt();reader.ReadToNextSibling("unitPrice",xmlNamespace);decimalunitPrice= ine("Total:"+ty*}}}基于流的读WritingXMLwithanstringxmlNamespace="ht XmlWriterSettingssettings=newXmlWriterSettings();settings.CloseOutput=true;settings.Indent=using(XmlWriterwriter=XmlWriter.Create(Console.Out,{ (true);//standalone ement("order",xmlNamespace); ement("orderItems",xmlNamespace); ement("orderItem",xmlNamespace); ty",xmlNamespace,writer.WriteElementString("unitPrice",xmlNamespace,}readersandwriters进行利用DOM使用DOM

利用DOM进行DOMNodesandRelated.NETNodeW3CDOMNodeRelated.NETDOMnodeXmlXml=newusing=newusing(FileStreamfsnewFileStream("sample.xml",FileMode.Open,{}using(XmlTextWriterwriter=new{writer.Formatting=}LoadingfromandsavingtoanXMLThe classisthecoreFordataUsethisLoad()andXmlReader/对DOMNavigatingthroughXmlElementandXmlAttributeare<?xml<?xml<book XmlNodeXmlNodebook=XmlNodepriceNode=XmlNodeisbnNode=book.GetAttributeNode("isbn");stringprice=priceNode.FirstChild.Value;stringisbn=isbnNode.Value;利用DOM进行操Manipulating <book<booktitle="XMLis//firstcreatethe doc=new XmlElementbookNode=doc.CreateElement("book");XmlNodepriceNode=doc.CreateElement("price");XmlNodeprice=doc.CreateTextNode("19.99");//setanattributebookNode.SetAttribute("title","XMLisCool");//addthenodestogether mentcommentment("SomeXmlProcessingInstructionmentcommentment("SomeXmlProcessingInstructionpi="xml-stylesheet","type='text/xsl'Manipulating 删除结点,使用父级的从其它的文档中引入XmlNodenodeXmlNodenode=Element,利用DOM议XML对XMLNamespaces的处XmlNamespaceManager类介<p:sldMasterIdLstXML<p:sldMasterIdLst /myOrderSchema”,现在元素的名为 XmlNamespaceManager类介 在所有的查询中创建和使用一个namespace需引XML;XmlNamespaceManager;XmlNamespaceManagermgr=newmgr.AddNamespace("myPf",.SelectSingleNode("//myPf:someElement",.SelectSingleNode("//myPf:someElement",议 XMLXMLSchema对象模型XmlSchemaValidator验证技术目前存在的验证XML完整性的技术有TypeDefinitionsXml‐DataReducedschemaXML‐SchemaDefinitionLanguageXML‐Schema是目前标准的XML完整性SchemaObject由XmlSchema类进行TheXmlSchemaSet(.netfx2.0)XmlSchemaSet在标准的兼容性和性能方面有很大的改‘logical’schema支持完全相同的目标命名空Validatingwiththe//CreatetheXML-XmlSchemaschema=using(XmlReaderreader={schema=XmlSchema.Read(reader,}//CreatethesettingsfortheXmlReaderXmlReaderSettingssettings=newXmlReaderSettings();settings.ValidationType=ValidationType.Schema;//addittotheXmlSchemaSetofthesettingsclass//Nowreadwiththereaderwhichalsoperformesvalidationusing(XmlReaderreader=XmlReader.Create("sample.xml",{while(reader.Read())}验证XML‐Schemas的容器//CreatetheXML-SchemaXmlSchemaschema=using(XmlReaderreader={schema=XmlSchema.Read(reader,}=new//Load and=new//Validateitusingtheattached验证WordProcessingML议XMLXML使用XMLNamespaces进行操查询处理1.Load

5.Checkthe MoveToRoot(

Evaluate()Select()Compile()

ForMoveNext(ForMoveNext(3.CreatetheMoveToParent(MoveToParent(2.2.Create4.Compile查询 在很多地方支持X‐PathCreateanewXPathNavigatorusingtheCreateNavigator()methodUsetheXml SelectNodes(xpath)or使用 进行最优化查XPathNavigatorXPathNavigatornavigator=foreach(XPathNavigatoritemNavigatorin{}XmlNodenodeXPathNavigatornavigatorforeach(XPathNavigatoritemNavigatorinnaviga

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论