你的位置:首页 > ASP.net教程

[ASP.net教程]linq查询xml


1.加载
XElement root = XElement.Parse(@"<?");      var elements = root.Elements("Item");//root下的第一层Item(Id为1和2)



XElement firstItem = root.Element("Item").Element("Name"); //第一个Item下的Name(Id为1)


var descendants = root.Element("Item").Descendants("Name");//第一个Item下的所有Name(包括Children下的,Id为1和1.1)


var xElements=root.Descendants("Name");//root下的所有子代的Name(Id为1,1.1,2)


 

2.直接加载文件:

var users = XElement.Load("TemplateUser.config").Elements("user"); 

var user = users.FirstOrDefault(); 

var Account = user.Element("Account").Value.ToString();  

 

 

3.

doc.Load                  

XDocument xdoc =doc.ToXDocument(); //var eventId = xdoc.Document.Root.Element("EventID"); //根节点下的eventid节点
if (eventId != null)
    {

          MessageBox.Show(eventId.Value); //15

    }

 

 

 

扩展方法

public static class     {
        public static XDocument ToXDocument(this         {
            return document.ToXDocument(LoadOptions.None);
        }

        public static XDocument ToXDocument(this         {
            using (            {
                return XDocument.Load(reader, options);
            }
        }
    }

 

From:http://www.cnblogs.com/xuejianxiyang/p/5377486.html