繁体   English   中英

如何获得子节点属性

[英]How to get a Child Nodes Attribute

我有xml数据,我想找到一个特定的节点/属性(不确定此处的适当定义),然后从那里选择其子节点的属性。

<Random>
<RandomChild ID="1" Name="First" />
</Random>
<Parent>
<Child ID="1" Name="First" />
<Child ID="2" Name="Second"/>
<Child ID="3" Name="Third"/>
<Child ID="4" Name="Fourth"/>
<Child ID="5" Name="Fifth"/>
<Child ID="6" Name="Sixth"/>
<Child ID="7" Name="Seventh"/>
<Child ID="8" Name="Eighth"/>
<Child ID="9" Name="Ninth"/>
</Parent>
<Random2>
<RandomChild2 ID="1" Name="First" />
</Random2>

我想要“家长”中的内容。 使用中的属性名称(ID和名称)出现在此xml的其他位置,因此我认为最有效的方法是找到“父”节点,然后选择其子节点的属性(如果有更有效的方法的方式让我知道)。

我尝试了各种查询,但是它们都未能初始化。 我不是在尝试调试特定的查询,而是希望对如何实现所需的内容进行澄清。 我在这里已经阅读了十几个类似的问题,但是它们似乎都是针对特定情况的具体示例,因此我无法弄清楚我想象的是一个相对简单的过程。

XDocument doc = XDocument.Load("input.xml");
foreach (XElement child in doc.Descendants("Parent").Elements("Child"))
{
  Console.WriteLine("Id: {1}, Name: {2}", child.Attribute("ID").Value, child.Attribute("Name").Value);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM