循环遍历xml

时间:2012-08-24 11:47:33

标签: c# xml

 <result>
   <email>
    <Id>1</Id>
    <Subject>hi</Subject>
   </email>
   <email>
    <Id>2</Id>
    <Subject>hi2</Subject>
   </email>
</result>

如何遍历此xml以在对象列表中保存Id,Subject

感谢您的帮助

2 个答案:

答案 0 :(得分:3)

使用LINQ to XML,您可以非常简单地实现它,假设您正在打开文件:

using System.Xml.Linq;

var doc = XDocument.Load(@"path\to\file.xml");
var result = doc.Element("result");
foreach(var mail in result.Elements("email")) {
    Console.WriteLine("id: {0}\nsubject: {1}",
        (int)mail.Element("Id"),
        (string)mail.Element("Subject"));
}

答案 1 :(得分:1)

您必须拥有一个eMail课程。 (您可以更改代码示例中的名称)它应该有效。

XDocument xdoc = new XDocument();
xdoc = XDocument.Load(fileName);
var songlist = from c in xdoc.Element("Result").Elements("email")
                           select new eMail{ 
                               ID = c.Element("ID").Value, 
                               Subject = c.Element("Subject").Value };