gpt4 book ai didi

c# - 使用 LINQ 获取多个节点值

转载 作者:行者123 更新时间:2023-11-30 14:26:33 25 4
gpt4 key购买 nike

假设您具有以下 XML 结构。

 <Class>
<Students>
<Student>
<StudentNo>555</StudentNo>
<Firstname>Joe</Firstname>
<Lastname>Smith</Lastname>
</Student>
<Student>
<StudentNo>222</StudentNo>
<Firstname>Smith</Firstname>
<Lastname>Joe</Lastname>
</Student>
<Students>
</Class>

并且您想使用 linq 获取所有的名字和姓氏。现在我得到以下内容

foreach (XElement x in data.Descendants("Student").SelectMany(e => data.Descendants("Firstname")))
{
Console.WriteLine(x.Value);
}

但是我怎样才能得到 lastName 呢?

最佳答案

您可以使用匿名类型来做到这一点:

var query=data.Descendants("Student")
.Select(s=> new { FirstName=s.Element("FirstName").Value,
LastName=s.Element("Lastname").Value});

或者您可以创建自定义类并保存结果:

var query=data.Descendants("Student")
.Select(s=> new Student{ FirstName=s.Element("FirstName").Value,
LastName=s.Element("Lastname").Value});

关于c# - 使用 LINQ 获取多个节点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35014787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com