【发布时间】:2021-08-16 02:04:42
【问题描述】:
我有一个 xml 文档
<CollRpt>
<Sumry SumryID="0001">
<BT BTID="1234" >
<FT FTID="24240981145200123809844" >
</FT>
<AcctCls CrInd="1">
<Ckey/>
</AcctCls>
</BT>
<Vchr VchrID="215"/>
<Tot TotCnt="4"/>
</Sumry>
</CollRpt>
只有当 Vchr 元素的 VchrID == 215 时,我才需要从每个“Sumry”元素和子元素中获取多个属性。我已经尝试了几种不同的方法,但都没有运气。任何指导将不胜感激。
var xml = XDocument.Load(@newFile);
var query = (from c in xml.Root.Descendants("CollRpt")
let s = c.Descendants("Sumry")
let v = s.Elements("Vchr")
where v.Attributes("VchrFormCd").Equals("215")
select new { SumryID = s.Attributes("SumryID"), ALC = v.Attributes("VchrID") }).ToList();
foreach (var q in query)
{
Console.WriteLine("{0}: {1}\n", q.SumryID ,q.VchrID);
}
【问题讨论】:
-
我认为有多个摘要正确吗?
-
是的,你是对的。