对象的名单上有XML描述一些数据是这样的:LINQ查询创建其中每个对象包含一个列表
<People>
<Person>
<Name>Alice</Name>
<Dogs>
<Dog>Labrador</Dog>
<Dog>German Shepherd</Dog>
</Dogs>
</Person>
<Person>
<Name>Bob</Name>
<Dogs>
<Dog>Poodle</Dog>
</Dogs>
</Person>
</People>
和一些类:
class Person
{
public string Name { get; set; }
public List<Dog> Dogs { get; set; }
}
class Dogs
{
public string Type { get; set; }
}
我想使用LINQ XML来查询这些数据,这样我就可以为每个人填充Dog集合来创建一组Person对象。我该怎么做呢?喜欢的东西:
var doc = XDocument.Load("Test.xml");
var enumerableOfPeople = from u in doc.Root.Descendants("Person")
select new Person() { Name = u.Element("Name").Value,
Dogs = /* WHAT GOES HERE */ };
你确定你的类是与您的代码正确? – coderwill
我在stackoverflow编辑器中编写了上面的代码,所以可能会有一些小错误,但我认为它给出了一般想法。哪一位不正确让我知道,我会修复它 – user555265