首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

用LINQ遍历 XML子节点解决方案

2013-01-04 
用LINQ遍历 XML子节点?xml version1.0 encodingutf-8 ?zyxmlserver_s serverid10/idna

用LINQ遍历 XML子节点
<?xml version="1.0" encoding="utf-8" ?> 
 <zyxml>
<server_s>
 <server>
    <id>10</id> 
    <name>张三</name> 
    <server_id>1</server_id> 
  </server>
  <server>
    <id>10</id> 
    <name>李四</name> 
    <server_id>2</server_id> 
  </server>
  <server>
    <id>10</id> 
    <name>王五</name> 
    <server_id>3</server_id> 
  </server>
<server_s>

用linq怎么遍历出全部的name和server_id呢?

[解决办法]


void Main()
{
XDocument xml=XDocument.Load("c:\\test.xml");
var query=from x in xml.Descendants("server") 
  select new{name=x.Element("name").Value,server_id=x.Element("server_id").Value};
foreach(var q in query)
{
  Console.WriteLine("Name:{0}\tServerId:{1}",q.name,q.server_id);
}
  /*
    Name:张三ServerId:1
Name:李四ServerId:2
Name:王五ServerId:3

  */
}

热点排行