博客园 首页 联系 订阅 管理

System.Xml.Linq.XElement Elements() 与 Descendants() 

2011-12-12 15:05:28|  分类: IT技术有关 |  标签: |字号订阅

 
 

Elements() 获得当前节点的子节点,

Descendants() 获取当前节点的子代节点,子节点、子节点的子节点、子节点的子节点的子节点、。。。。。由于Descendants() 获取当前节点的子代节点,数据量会很大,因此Descendants()方法延迟执行。

举例来说:对于Xml文件,

<?xml version="1.0" encoding="gb2312"?> <Persons>    <Person>       <Name>小李</Name>   </Person>   <Person>       <Name>小牛</Name>    </Person> </Persons>

XElement root = XElement.Load("Text.txt"); List<XElement> ele = root.Elements().ToList(); List<XElement> des = root.Descendants().ToList();

其中,ele 的个数为2 ,分别为

<Person><Name>小李</Name></Person>、

<Person><Name>小牛</Name></Person>

des 的个数为4 ,分别为

<Person><Name>小李</Name></Person>、

<Name>小李</Name>、

<Person><Name>小牛</Name></Person>、

<Name>小牛</Name>

posted on 2012-11-02 15:32  $蔷  阅读(151)  评论(0编辑  收藏  举报