我想获得第二个价格元素的价值。我们不能直接获得最后一个或第一个。但我不知道如何直接获得第二个元素。 这是xml ....(我只放了所需的部分。我的xml是有效的)
<Departure>
<Date>2016-09-24T00:00:00.0000000</Date>
<Pricing>
<Price>
<Type>ADT</Type>
<Value>299.00</Value>
<Qty>20</Qty>
</Price>
<Price>
<Type>CHD</Type>
<Value>230.00</Value>
<Qty>5</Qty>
</Price>
<Price>
<Type>INF</Type>
<Value>150.00</Value>
<Qty>5</Qty>
</Price>
<Price>
<Type>FAM</Type>
<Value>0.00</Value>
<Qty>0</Qty>
</Price>
<Price>
<Type>SEN</Type>
<Value>299.00</Value>
<Qty>20</Qty>
</Price>
</Pricing>
</Departure>
<Departure>
这就是我采用Last()
的方式 numberofDays = itm.Elements("Itinerary").Elements("ItineraryItem").Elements("EndDay").Last().Value,
像这样我想获得第二个价格元素的价值。(Type valud是&#34; CHD&#34;)
答案 0 :(得分:1)
要获取位置N
的元素,您可以跳过N-1
个元素,然后选择FirstOrDefault
:
var secondPrice = item.GetElements("Price").Skip(1).FirstOrDefault();
答案 1 :(得分:1)
不是使用XML的最新方式,但这可以使用
XmlDocument doc = new XmlDocument();
doc.LoadXml(XML);
XmlNode secondPrice = doc.GetElementsByTagName("Price")[1];