如何从XNode读取数据。
这是我从另一个查询得到的XNode。
<claim kind="national" sequence="1">
<country>UK</country>
<number>66</number>
<date>20080602</date>
</claim>
<claim kind="national" sequence="3">
<country>TH</country>
<number>61</number>
<date>20090316</date>
</claim>
我想获得国家/地区和日期值。
任何帮助都会非常感激。 感谢。
答案 0 :(得分:6)
尝试,
var list = from ele in XDocument.Load(@"c:\file.xml").Descendants("claim")
select new
{
Country=(string)ele.Element("country"),
Date=(string)ele.Element("date")
};
foreach (var t in list)
{
Console.WriteLine(t.Country + " "+ t.Date );
}
编辑:
string country=(string)((XElement)xNodeObj).Element("country");
答案 1 :(得分:1)
以下是使用XPath执行此操作的方法:
string xml = "<main><claim kind=\"national\" sequence=\"1\"> <country>UK</country> <number>66</number> <date>20080602</date></claim><claim kind=\"national\" sequence=\"3\"> <country>TH</country> <number>61</number> <date>20090316</date></claim></main>";
XDocument doc = XDocument.Parse(xml);
doc.XPathSelectElement("//claim[country = 'TH']/number").Value.Dump("xpath stuff");