gpt4 book ai didi

linq - 如何使用 LINQ 选择特定的子节点?

转载 作者:行者123 更新时间:2023-12-04 06:36:03 26 4
gpt4 key购买 nike

我有一个节点,这个节点包含 5 个子节点。其中三个是RatePlan。如何使用 LINQ 选择那些 RatePlan 子节点?

让我们澄清一些事情:

我的 xml 是这样的:

<hotels>
<hotel id="1" name="hotel 1">
<telephone>123456789</telephone>
<fax>123</fax>
<address>hotels address</address>
<hotelRatePlan>10</hotelRatePlan>
<hotelRatePlan>11</hotelRatePlan>
<hotelRatePlan>12</hotelRatePlan>
</hotel>
<hotel id="2" name="hotel 2">
<telephone>123456789</telephone>
<fax>123</fax>
<address>hotels address</address>
<hotelRatePlan>100</hotelRatePlan>
<hotelRatePlan>110</hotelRatePlan>
<hotelRatePlan>120</hotelRatePlan>
</hotel>
<hotel id="3" name="hotel 3">
<telephone>123456789</telephone>
<fax>123</fax>
<address>hotels address</address>
<hotelRatePlan>10</hotelRatePlan>
<hotelRatePlan>11</hotelRatePlan>
<hotelRatePlan>12</hotelRatePlan>
</hotel>
</hotels>

我正在使用 XMLDocument 来读取 XML 文件。阅读后,我使用 SelectNodes 进行选择。当我获得第一个酒店信息时,我想选择特定的子节点(hotelRatePlan)。我怎样才能做到这一点?

最佳答案

您的问题不是特别清楚,但您可能只想:

var ratePlans = node.Elements("RatePlan");

假设您实际上使用的是 LINQ to XML 而不是 XmlNode , XmlDocument等。如果您使用“旧”DOM API,您可以使用:
var ratePlans = node.ChildNodes
.OfType<XmlElement>()
.Where(e => e.LocalName == "RatePlan");

...但如果可以的话,我会转向 LINQ to XML。它只是一个更好的 XML API。

关于linq - 如何使用 LINQ 选择特定的子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3871190/

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