【发布时间】:2017-02-20 05:25:10
【问题描述】:
给定一个示例 XML 文件:
<libraries>
<library name="some library">
<book name="my book"/>
<book name="your book"/>
</library>
<library name="another library">
<book name="his book"/>
<book name="her book"/>
</library>
</libraries>
如何遍历每个库并仅获取其子库?例如。如果我在第一个 library 元素中并且我去检索它的所有后代/孩子,它只会返回其中的两本书。
我尝试过迭代和使用 XElement.Elements("book")、XElement.Elements()、XElement.Descendants() 等,但都返回了作为书的每个元素(因此它会从第二个图书馆也是)。大多数情况下,我认为我只是在努力理解 XDocument 如何跟踪其元素以及什么被认为是后代/孩子。
如果可能,如果有人可以解释如何使用 XDocument 为任何级别的元素完成此操作,将不胜感激(例如,如果每本书都有子元素,以及这些元素是否有子元素等)。
【问题讨论】:
标签: c# xml linq-to-xml