我认为我对 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>
所以我尝试解析这些数据并使用结果创建我的 View 模型人员对象。这是我的 View 模型的示例。
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(),
};
这可以获取地址元素下的第一个元素并将其添加到艺术家列表中。如何扩展它以将所有地址元素添加到列表中?任何帮助将不胜感激!谢谢!
最佳答案
addressLst = personfile.Descendants("Addresses").Elements("Address")
.Select( a => a.Value).ToList()
关于c# - Linq 多元素选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6103361/