获得从XML文件元素在C#

问题描述 投票:0回答:1

我有一个包含元素的XML文件。我正在存储CSV是XML文件作为字符串的内容在我的设计项目中的一个正在读从CSV是XML的内容,我想它存在于我试图像这样的XML文件的内容标签的数据。

XmlDocument doc = new XmlDocument();
doc.LoadXml(Convert.ToString(dataRow["XML"]));
var temp = doc.GetElementsByTagName("Mail");

但我没有收到邮件的价值为temp.what应该怎么办?

c# xml getelementsbytagname
1个回答
1
投票

GetElementsByTagName返回XmlNodeListMSDN Reference

// Display all the book titles.
XmlNodeList elemList = doc.GetElementsByTagName("title");

for (int i=0; i < elemList.Count; i++)
{   
    Console.WriteLine(elemList[i].InnerXml);
}  

LINQ的解决方案:

var xDoc = XDocument.Load(dataRow["XML"].ToString());

var mailList = xDoc.Descendants("Mail")
                   .Select(x => new
                    {
                        MailID = x.Element("MailID").Value
                    })
                    .ToList();

更新:

XmlDocument doc = new XmlDocument();
doc.LoadXml(Convert.ToString(dataRow["XML"]));
var temp = doc.GetElementsByTagName("Mail");

// loop through all retrieved "Mail" elements 
foreach(XmlElement xElem in temp)
{
     string sMailText = xElem.InnerText;
}
© www.soinside.com 2019 - 2024. All rights reserved.