码迷,mamicode.com
首页 > 其他好文 > 详细

LINQ to XML

时间:2017-08-23 13:29:31      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:with   csharp   span   .net   attr   new   函数   利用   select   

LINQ to XML
LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML。
LINQ to XML 将 XML 文档置于内存中,这一点很像文档对象模型 (DOM)。
但是,LINQ to XML 与 DOM 不同:它提供一种新的对象模型,这是一种更轻量的模型,使用也更方便,这种模型利用了 C# 中的语言功能。
例如,示例 Sample XML Documents (LINQ to XML)  通过使用 LINQ to XML,可以运行以下查询,以获取采购单每个项元素的部件号属性值:
  
IEnumerable<string> partNos =  
from item in purchaseOrder.Descendants("Item")  
select (string) item.Attribute("PartNumber");  
另一个示例,您可能需要一个列表,列出值大于 100 美元的项,并根据部件号排序。 若要获取此信息,可以运行下面的查询:
  
IEnumerable<XElement> partNos =  
from item in purchaseOrder.Descendants("Item")  
where (int) item.Element("Quantity") *  
    (decimal) item.Element("USPrice") > 100  
orderby (string)item.Element("PartNumber")  
select item;  
 
除了这些 LINQ 功能以外,LINQ to XML 提供了改进的 XML 编程接口。 使用 LINQ to XML,您可以:
  • 从文件或流加载 XML。
  • 将 XML 序列化为文件或流。
  • 使用函数构造从头开始创建 XML。
  • 使用类似 XPath 的轴查询 XML。
  • 使用 AddRemoveReplaceWith 和 SetValue 等方法对内存 XML 树进行操作。
  • 使用 XSD 验证 XML 树。
  • 使用这些功能的组合,可将 XML 树从一种形状转换为另一种形状。
创建 XML 树
XElement contacts =  
new XElement("Contacts",  
    new XElement("Contact",  
        new XElement("Name", "Patrick Hines"),  
        new XElement("Phone", "206-555-0144",   
            new XAttribute("Type", "Home")),  
        new XElement("phone", "425-555-0145",  
            new XAttribute("Type", "Work")),  
        new XElement("Address",  
            new XElement("Street1", "123 Main St"),  
            new XElement("City", "Mercer Island"),  
            new XElement("State", "WA"),  
            new XElement("Postal", "68042")  
        )  
    )  
);  
 

LINQ to XML

标签:with   csharp   span   .net   attr   new   函数   利用   select   

原文地址:http://www.cnblogs.com/zero0r1/p/7417532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!