2011-05-29 46 views
2

我试图deserialise一些XML包含在.net C#多单XML元素,就像这样:如何分析多个单独的XML元素的.Net C#

<Root> 
<Status>OK</Status> 
<Person> 
    <Name>Element 1</Name> 
</Person> 
<Person> 
    <Name>Element 2</Name> 
</Person> 
</Root> 

的人节点不在一个<Persons></Persons>,因此我无法使用[XmlArray]属性。

有谁知道这么做,而不必使用XPath与XDocument。

感谢

+0

制作使用LINQ的到XML可以很容易地做你的工作........有看这个去学习它:http://www.codeproject.com/KB/linq/LINQtoXML.aspx – 2011-05-29 09:46:08

回答

1

如果使用.net 3.5以上,使用LINQ到XML:

string xml = "<root>...</root>"; 
XDocument doc = XDocument.Parse(xml); // Use .Load() if loading from a file 
String status = doc.Root.Element("status").Value; 
IEnumerable<string> personNames = doc.Root.Descendants("person").Select(x => x.Element("name").Value); 
+0

很好,谢谢 – 2011-05-29 10:58:19