<?xml version="1.0" encoding="utf-8"?>
<OrdersReport Date="2012-08-01">
<Returns>
<Amount>
<OrderId>2</OrderId>
<OrderId>3</OrderId>
<OrderId>21</OrderId>
<OrderId>23</OrderId>
</Amount>
</Returns>
</OrdersReport>
这是我试图获取 OrderId 的代码:
var amount = doc.Descendants("Amount")
.Select(y => new
{
OrderId = (int)y.Element("OrderId")
});
foreach (var r in amount)
{
Console.WriteLine(r.OrderId);
}
Console.Read();
我的输出是:
2
2
最佳答案
你可以这样做:
var orderIds = doc.Descendants("OrderId");
foreach (var orderId in orderIds)
{
Console.WriteLine(orderId.Value);
}
或者,在这种情况下是相同的:
var orders = doc.Descendants("Amount")
.Descendants("OrderId");
关于c# - Linq to XML 未获取所有节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13227217/