【发布时间】:2017-07-05 20:05:14
【问题描述】:
这是我正在使用的 XML 的摘录
<AccountNumber>
<RecordID>A9</RecordID>
<SegmentLength>14</SegmentLength>
<Number>6770307103</Number>
</AccountNumber>
<PaymentCounter>
<RecordID>B2</RecordID>
<SegmentLength>14</SegmentLength>
<History>99</History>
<Delinq30Day>00</Delinq30Day>
<Delinq60Day>00</Delinq60Day>
<Delinq90PlusDay>00</Delinq90PlusDay>
<DerogCnt>00</DerogCnt>
</PaymentCounter>
这里我试图确定 AccountNumber 和 PaymentCounter 下的子元素的数量。
我正在寻找这个答案 帐号计数 = 3 PaymentCounter 计数 = 7
得到计数后,我将使用数据动态填充表格。
我试过这个: int count1 = xmlDocument.Descendants("AccountNumber").Count();
LINQ to XML 中的 count() 将给出元素“AccountNumber”在 XML 中重复的次数,但不会给出子元素的数量。
有没有办法做到这一点?
【问题讨论】:
-
您应该从
AccountNumber元素中获取后代元素,而不是所有 xml。所以,试试看起来像这样的东西:xmlDocument.Descendants("AccountNumber").SelectMany(item=>item.Descendants()).Count() -
您应该解析为 AccountNumber 和 PaymentCount 的父级,以便它们最终在同一个组中。
-
您好,欢迎来到 Stack Overflow,请花点时间通过 welcome tour 了解您在此处的方式(并获得您的第一个徽章),阅读如何创建 Minimal, Complete, and Verifiable example并检查How to Ask Good Questions,这样您就有机会获得反馈和有用的答案。
标签: c# xml linq linq-to-xml