我有这个 XML 文件,并希望将带有属性 Name="TL 52146" 的 < Norm > 下的 MGU 标记的所有值写入列表:<?xml version="1.0" encoding="utf-8"?><Normen> <Norm Name="TL 52146"> <MGU>PV 1401</MGU> <MGU>PV 1425</MGU> <MGU>PV 1448</MGU> </Norm></Normen>预期的结果是:光伏1401光伏 1425光伏 1448当我使用这段代码时,我只得到一个包含所有 MGU 的列表元素,但我希望每个 MGU 都是我列表中的一个单独条目:XDocument doc = XDocument.Load("data/data.xml");var ChildsOfNorm = from element in doc.Descendants("Norm") where element.Attribute("Name").Value == "TL 52146" select element;有人可以帮帮我吗?
1 回答
桃花长相依
TA贡献1860条经验 获得超8个赞
我将代码更改为以下内容:
var ChildsOfNorm = doc
.Descendants("Norm")
.Where(e => e.Attribute("Name").Value == "TL 52146")
.Elements();
如果您只想获取MGU元素,请将Elements()调用更改为Elements("MGU").
这应该得到所有想要的元素。
使用给定的 xml
foreach (var v in ChildsOfNorm)
Console.WriteLine(v.Value);
输出:
PV 1401
PV 1425
PV 1448
- 1 回答
- 0 关注
- 182 浏览
添加回答
举报
0/150
提交
取消