实体类

 public class Customer
{
public string CustomerID { get; set; }
public string CompanyName { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string Region { get; set; }
public string PostalCode { get; set; }
public string Country { get; set; }
public string Phone { get; set; }
public string Fax { get; set; }
public Order[] Orders { get; set; }
13        public int CId{ get; set; } }

从XML中获取数据

  public class LinqSamples
{

4 public List<Customer> GetList()
{
List<Customer> customerList = (
from e in XDocument.Load("Customers.xml").
Root.Elements("customer")
select new Customer
{
CustomerID = (string)e.Element("id"),
CompanyName = (string)e.Element("name"),
Address = (string)e.Element("address"),
City = (string)e.Element("city"),
CId= (int)e.Element("cid"),
PostalCode = (string)e.Element("postalcode"),
Country = (string)e.Element("country"),
Phone = (string)e.Element("phone"),
Fax = (string)e.Element("fax"),
Orders = (
from o in e.Elements("orders").Elements("order")
select new Order
{
OrderID = (int)o.Element("id"),
OrderDate = (DateTime)o.Element("orderdate"),
Total = (decimal)o.Element("total")
})
.ToArray()
})
.ToList();
             return customerList;
}
}

XML数据文件

 <?xml version="1.0"?>
<customers>
<customer>
    <cid>1</cid>
<id>ALFKI</id>
<name>Alfreds Futterkiste</name>
<address>Obere Str. </address>
<city>Berlin</city>
<postalcode></postalcode>
<country>Germany</country>
<phone>-</phone>
<fax>-</fax>
<orders>
<order>
<id></id>
<orderdate>--25T00::</orderdate>
<total>814.50</total>
</order>
<order>
<id></id>
<orderdate>--03T00::</orderdate>
<total>878.00</total>
</order>
<order>
<id></id>
<orderdate>--13T00::</orderdate>
<total>330.00</total>
</order>
<order>
<id></id>
<orderdate>--15T00::</orderdate>
<total>845.80</total>
</order>
<order>
<id></id>
<orderdate>--16T00::</orderdate>
<total>471.20</total>
</order>
<order>
<id></id>
<orderdate>--09T00::</orderdate>
<total>933.50</total>
</order>
</orders>
</customer>
<customer>
    <cid>2</cid>
<id>ANATR</id>
<name>Ana Trujillo Emparedados y helados</name>
<address>Avda. de la Constitución </address>
<city>México D.F.</city>
<postalcode></postalcode>
<country>Mexico</country>
<phone>() -</phone>
<fax>() -</fax>
<orders>
<order>
<id></id>
<orderdate>--18T00::</orderdate>
<total>88.80</total>
</order>
<order>
<id></id>
<orderdate>--08T00::</orderdate>
<total>479.75</total>
</order>
<order>
<id></id>
<orderdate>--28T00::</orderdate>
<total>320.00</total>
</order>
<order>
<id></id>
<orderdate>--04T00::</orderdate>
<total>514.40</total>
</order>
</orders>
</customer>
</customers>

内容源自:http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b

Linq:从XML获取数据的更多相关文章

  1. 用LINQ获取XML节点数据

    Insus.NET想对<从字符串中获取XML节点数据> http://www.cnblogs.com/insus/p/3299052.html 这篇改写为使用LINQ的方法实现.LINQ中 ...

  2. wemall app商城源码Android 获取XML网络数据并绑定到ListView

    wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享Android 获取XML网络数据并绑定到Li ...

  3. Android 开发 values目录里定义数组、颜色、文本、尺寸xml配置文件并且获取数据 附录Android符号转码表

    以下xml都在res/values/文件夹下创建 创建String类型array: /app/src/main/res/values/array.xml <?xml version=" ...

  4. HttpClient获取返回类型为JSON或XML的数据

    Java_HttpClient获取返回类型为JSON或XML的数据 原创 2017年04月06日 17:38:29 706 HttpClient 获取返回类型为JSON或XML的数据 使用httpco ...

  5. 使用LINQ的Skip和Take函数分批获取数据

    Skip函数和Take函数是System.Linq对类Enumberable的扩展, 其中Skip函数是跳过序列中的前n个数据,参数为需要跳过的数据量, Take函数是取序列中的n个数据,参数为要获取 ...

  6. 从字符串中获取XML节点数据

    从字符串中获取XML节点数据,前一篇<字符串创建XML文档> http://www.cnblogs.com/insus/p/3298579.html 是储存为一个XML文档.现在,Insu ...

  7. PHP生成和获取XML格式数据

    在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以XML或者JSON格式传输,本文将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的X ...

  8. python开发笔记-通过xml快捷获取数据

    今天在做下python开发笔记之如何通过xml快捷获取数据,下面以调取nltk语料库为例: import nltk nltk.download() showing info https://raw.g ...

  9. c#操作xml文件(XmlDocument,XmlTextReader,Linq To Xml)

    主界面

随机推荐

  1. Linux 设置中文编码

    Linux 设置中文编码 1.测试是否存在字体列表 fc-list 2.安装字体列表包 yum -y install fontconfig 3.去win系统中找到拷贝字体文件. 路径:C:/Windo ...

  2. 运维必备技能 WEB 日志分析

    文章节选自<Netkiller Monitoring 手札> 20.2. Web 20.2.1. Apache Log 1.查看当天有多少个IP访问: awk '{print $1}' l ...

  3. Scala:scala的一些简单操作命令

    Scala是一门多范式的编程语言,一种类似java的编程语言,设计初衷是实现可伸缩的语言.并集成面向对象编程和函数式编程的各种特性. 不太久之前编程语言还可以毫无疑意地归类成“命令式”或者“函数式”或 ...

  4. 自定义QSS

    /*QComboBox*/ QComboBox {border: 1px solid rgb(111, 156, 207);border-radius: 3px;padding: 1px 18px 1 ...

  5. iOS 开发 申请定位

    在iOS8以后,苹果已经强制开发者在请求定位服务时获得用户的授权,此外iOS状态栏中还有指示图标,提示用户当前应用是否正在使用定位服务.另外在iOS8以后,苹果进一步改善了定位服务,让开发者请求定位服 ...

  6. BZOJ-5424: 烧桥计划(单调队列)

    BZOJ-5424: 烧桥计划(单调队列) 题目链接 题解: 先考虑最暴力的\(dp\):设\(f[k][i]\)表示搞掉第\(1\sim i\)段,烧了\(k\)段的最小花费,设\(calc(x,y ...

  7. EF Code-First 学习之旅 多对多的关系

    public class Student { public Student() { this.Courses = new HashSet<Course>(); } public int S ...

  8. scala学习手记28 - Execute Around模式

    我们访问资源需要关注对资源的锁定.对资源的申请和释放,还有考虑可能遇到的各种异常.这些事项本身与代码的逻辑操作无关,但我们不能遗漏.也就是说进入方法时获取资源,退出方法时释放资源.这种处理就进入了Ex ...

  9. django中Model表的反向查询

    很多时候需要在多张表之间进行跨表查询,这其中外键是必须存在的,而通过外键所处的表的对象进行跨表查询, 称为正向查询.反之,则是反向查询. 正向查询很简单,这里不谈. 主要谈下反向查询. class U ...

  10. 禁用Browser Link

    Browser Link是VS 2013开始引入的一个强大功能,让前端代码(比如AngularJS的代码)在VS中的修改更加轻而易举. 前端代码是运行在浏览器中,而Visual Studio通常只会和 ...