【发布时间】:2011-08-31 11:52:29
【问题描述】:
我认为我对 LINQ 有很好的理解,但是,我在从 XML 文件中选择多个元素时遇到了困难。这是 XML 数据的示例。
<Person>
<Addresses>
<Address>1021 E. Ray Rd</Address>
<Address>453 E. John Rd</Address>
</Addresses>
<Picture>www.testpic.com/pic/2834723</Picture>
</Person>
所以我正在尝试解析这些数据并使用结果创建我的 viewmodel 人物对象。这是我的视图模型的示例。
Public class personmodel
{
public string picURI {get;set;}
public List<string> addressLst {get;set;}
}
对如何使用多个地址元素填充我的 addressLst 有任何见解吗?这就是我想做的事情..
var xmlPeople = XElement.Parse(document)
var person = from personfile in xmlPeople.Descendants("Person")
select new personmodel
{
picURI = (string)personfile.Element("Picture"),
addressLst = personfile.Descendants("Addresses").Select(item =>item.Element("Address").Value.ToList(),
};
这可以抓取 Addresses 元素下的第一个元素并将其添加到艺术家列表中。如何扩展它以将所有地址元素添加到列表中?任何帮助将不胜感激!谢谢!
【问题讨论】: