[英]How do I get a list of child elements from XDocument object?
我試圖從XML文件中獲取所有“視頻”元素及其屬性,如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<videos>
<video title="video1" path="videos\video1.wma"/>
<video title="video2" path="videos\video2.wma"/>
<video title="video3" path="videos\video3.wma"/>
</videos>
以下內容僅選擇根節點和所有子節點。 我想將所有'視頻'元素放入IEnumerable中。 有人能告訴我我做錯了什么嗎?
IEnumerable<XElement> elements = from xml in _xdoc.Descendants("videos")
select xml;
上面返回一個長度為== 1的集合。它包含根元素和所有子元素。
您想要選擇后代(“視頻”)。 “視頻”似乎是您的根條目,其中有1個元素。 視頻的內部元素是您要查詢的內容。
例:
var query = from video in document.Descendants("video")
select new
{
Title = video.Attribute("title").Value,
Path = video.Attribute("path").Value
};
這將為您提供一個具有兩個字符串屬性的IEnumerable匿名類型。 否則,您只需選擇“視頻”並獲取IEnumerable<XElement>
,您可以根據需要進一步解析。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.