1
此問題的變體已被問到,但我還沒有找到能幫助我解決問題的人。XML到Linq獲取具有屬性值的子節點
鑑於這種格式的XML文件:
<TopLevel>
<SecondLevel Name="Name" Color="Blue">
<ChildNode1></ChildNode1>
<ChildNode2></ChildNode2>
</SecondLevel>
<SecondLevel Name="Name2" Color="Red">
...
</SecondLevel>
</topLevel>
我有值的屬性顏色。 我想要的是能夠首先找到與該顏色對應的Name
,然後查找所有的子節點。
我更喜歡在XDocument上使用Xelement。
這是我迄今嘗試過的,但沒有運氣。
XElement xelement = XElement.Load("XmlFile.xml");
IEnumerable<XElement> Name2=
from el in xelement.Elements("SecondLevel")
where el.Attribute("Color") == "Red"
select el;
因此,我最終想要將其格式化爲數據表。這是可行的嗎?
這是偉大的,因爲它發現與顏色相關聯的名稱屬性,但如果我想的子節點的' SecondLevel'node? –
@moalaz然後將代碼保留原樣 - 'select el'沒有投影到Name屬性值。因此,您將擁有XElements序列 –
完美!有誰知道一個簡單的方法把孩子節點放入數據表? –