我需要取值爲xml節點<СуммаВсегоСначалаРасчетногоПериода> 201,201值。如何從XML使用LINQ到XML數據
我嘗試使用下面的代碼藉此值:
C#
var attrArr = (_doc.Root.Descendants("Раздел2РасчетПоТарифуДопТарифу")
.Where(i => i.Descendants("КодСтроки").FirstOrDefault().Value == "201")
.Select(i => i.Descendants("СуммаВсегоСначалаРасчетногоПериода").FirstOrDefault().Value))
.FirstOrDefault();
但我只得到第一個值(201)。
如果我進入i => i.Descendants("КодСтроки").FirstOrDefault().Value == "202"
,值= 0
XML
<Раздел2РасчетПоТарифуДопТарифу>
<Раздел2_1_РасчетСВпоТарифу>
<КодТарифа>03</КодТарифа>
<НаОбязательноеПенсионноеСтрахование>
<ВыплатыИвознаграждения_1966старше>
<КодСтроки>201</КодСтроки>
<РасчетСумм>
<СуммаВсегоСначалаРасчетногоПериода>201</СуммаВсегоСначалаРасчетногоПериода>
<СуммаПоследние1месяц>0.00</СуммаПоследние1месяц>
<СуммаПоследние2месяц>0.00</СуммаПоследние2месяц>
<СуммаПоследние3месяц>0.00</СуммаПоследние3месяц>
</РасчетСумм>
</ВыплатыИвознаграждения_1966старше>
<ВыплатыИвознаграждения_1967моложе>
<КодСтроки>202</КодСтроки>
<РасчетСумм>
<СуммаВсегоСначалаРасчетногоПериода>202</СуммаВсегоСначалаРасчетногоПериода>
<СуммаПоследние1месяц>0.00</СуммаПоследние1месяц>
<СуммаПоследние2месяц>0.00</СуммаПоследние2месяц>
<СуммаПоследние3месяц>0.00</СуммаПоследние3месяц>
</РасчетСумм>
</ВыплатыИвознаграждения_1967моложе>
<ВыплатыИвознаграждения_ВременноИГ>
<КодСтроки>203</КодСтроки>
<РасчетСумм>
<СуммаВсегоСначалаРасчетногоПериода>203</СуммаВсегоСначалаРасчетногоПериода>
<СуммаПоследние1месяц>0.00</СуммаПоследние1месяц>
<СуммаПоследние2месяц>0.00</СуммаПоследние2месяц>
<СуммаПоследние3месяц>0.00</СуммаПоследние3месяц>
</РасчетСумм>
我需要採取值201,202和203
無法將表達式類型XElement轉換爲返回類型bool。 .Where(i => i.Descendants(「КодСтроки」)。FirstOrDefault(x => x.Value ==「202」)) – 2015-02-06 14:30:51