为了账号安全,请及时绑定邮箱和手机立即绑定

将具有属性的 XML 元素写入列表

将具有属性的 XML 元素写入列表

C#
函数式编程 2021-10-24 18:02:42
我有这个 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


查看完整回答
反对 回复 2021-10-24
  • 1 回答
  • 0 关注
  • 182 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信