LINQ学习笔记:XDocument文档与XML声明
文档与声明 XDocument 一个XDocument包装了根XElement并且允许你添加一个XDeclaration, 用于处理指令, 说明文档类型, 以及顶级的注释. XDocument是可选的, 并且能够被忽略或者省略, 这点与W3C DOM不同, 它并不是将所有的东西保持在一起的粘合剂. XDocument提供了与XElement一样的构造函数, 是基于XContainer的, 同样也支持AddXXX, RemoveXXX以及ReplaceXXX方法. 与XElement不同的是, 一个XDocument只能接受有限的一些内容:
所有这些, 只有根XElement是强制要求必须要有一个有效的XDocument. XDeclaration是可选的, 如果省略它, 在序列化的过程当中将会自动应用默认设置. 最简单的有效XDocument只需要有一个根元素 1: var doc = new XDocument ( 2: new XElement ("test", "data") 3: );
注意, 我们并没有包含XDeclaration对象. 但是如果你调用doc.Save保存, 你会发现文件中仍然会包含XML declaration, 因为这是默认生成的. 下面的例子产生了一个简单但正确的XHTML文件来演示XDocument能够接受的所有构造: 1: var styleInstruction = new XProcessingInstruction ( 2: "xml-stylesheet", "href=''styles.css'' type=''text/css''"); 3:
4: var docType = new XDocumentType ("html", 5: "-//W3C//DTD XHTML 1.0 Strict//EN", 6: "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd", 7: null); 8:
9: XNamespace ns = "http://www.w3.org/1999/xhtml"; 10: var root =
11: new XElement (ns + "html", 12: new XElement (ns + "head", 13: new XElement (ns + "title", "An XHTML page")), 14: new XElement (ns + "body", 15: new XElement (ns + "p", "This is the content")) 16: );
17: var doc =
18: new XDocument ( 19: new XDeclaration ("1.0", "utf-8", "no"), 20: new XComment ("Reference a stylesheet"), 21: styleInstruction,
22: docType,
23: root);
24:
25: doc.Save ("test.html"); |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |