【发布时间】:2012-03-20 19:22:33
【问题描述】:
我正在尝试获取 4 个列表深度列表集合,List<List<List<List<int>>>>。从我的 Xml 看起来像
<root>
<Claim key="1" carrier="carA" zip="34343" pages="1"/>
<Claim key="2" carrier="carA" zip="34343" pages="2"/>
<Claim key="3" carrier="carB" zip="10505" pages="2"/>
<Claim key="4" carrier="carB" zip="10505" pages="4"/>
<Claim key="5" carrier="carB" zip="10505" pages="4"/>
</root>
输出的结构应该是这样的
-all
-1
-34343
-carA
-1
-2
-34343
-carA
-2
-10505
-carB
-3
-4
-10505
-carB
-4
-5
目标是根据节点属性对我的 XML 进行排序,首先按页数,然后按 zip,然后按运营商。然后,我需要循环浏览结果列表并按特定顺序处理每个索赔。我无法为 3 个嵌套组获取正确的语法。我已经完成了获得 2 个嵌套组,任何人都可以帮助我获得第三个。
到目前为止,这是我的代码。
var query = from claim in root.Elements("Claim")
group claim by claim.Attributes("Pages").First().Value into pageGroups
from zipGroups in
(from claim in pageGroups
group claim by int.Parse(claim.Attributes("CarrierZip").First().Value))
group zipGroups by pageGroups.Key;
【问题讨论】:
-
您给出的输出似乎与您发布的输入不同。如果关系更明显,可能会更容易回答。
-
示例中C车和D车在哪里?
-
对不起,我只是把随机数据放在一起,我已经修好了。现在应该一起去
-
来吧,让一个人休息一下 - 问题是什么:“首先按页数,然后按 zip,然后按运营商”
-
自stackoverflow.com/questions/9777885/… 以来发生了什么变化?
标签: c# .net xml linq-to-xml nested-groups