当前位置:编程学习 > C#/ASP.NET >>

请教大家,如下XML想取得某个节点该怎么取

<recordDataList>
<recordData className="RD1">
<a>dsfsd</a>
<b>dsfsd</b>
</recordData>
<recordData className="RD2">
<c>dsfsd</c>
<d>dsfsd</d>
</recordData>
</recordDataList>

XML内容如上
我想在如下代码中获得className="RD2"中的c节点的值,该如何取,谢谢


var Data = XElement.Parse(xmlstring);//xmlstring为如上所示的XML内容
var query = from p in Data.Elements("recordData")
    where p.Attribute("className").Value == "RD1" || p.Attribute("className").Value == "RD2"
    select new { 
      A=(className=/*"RD2"中的c节点的值*/)
      };
--------------------编程问答--------------------

string[] result = xele.Descendants().Descendants().Where(w => w.Name == "c").Select(s => s.Value).ToArray();
--------------------编程问答--------------------
            XmlDocument doc = new XmlDocument();
            doc.Load("C:\a.xml");
            XmlNode rootNode = doc.SelectSingleNode("recordDataList");
            foreach (XmlNode node in rootNode.SelectNodes("recordData"))
            {
                if (node.Attributes("className") == "RD2")
                {
                    MessageBox.Show(node.SelectSingleNode("c"));
                }

            }
--------------------编程问答--------------------


            var elements = xe.Elements("recordData")
                         .Descendants("c")
                         .ToList();
            foreach (var me in elements)
            {
                MessageBox.Show( me.Value);
            }
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,