0
我想知道我怎麼能解析這個XML:解析XML層次
<MenuItems>
<MenuItem Id="2" Name="Country">
<MenuItem Id="2272" Name="Europe">
<MenuItem Id="888" Name="Austria"/>
</MenuItem>
<MenuItem Id="2572" Name="Asia">
<MenuItem Id="2572" Name="Japan"/>
</MenuItem>
</MenuItem>
<MenuItem Id="3" Name="Car">
<MenuItem Id="231" Name="Diesel">
<MenuItem Id="387" Name="Toyota">
<MenuItem Id="387" Name="Avensis"/>
</MenuItem>
</MenuItem>
</MenuItem>
</MenuItems>
,並編寫以下輸出到控制檯:
國家
- 歐洲
--Austria
-Asia
- 日本
汽車
-Diesel
--Toyota
--- AVENSIS
我不知道事先在層次結構孩子的深度。
我的代碼:
XElement doc = XElement.Parse(DataXml);
XElement MenuNode = doc.XPathSelectElement("/MenuItem");
var segmentNodes = MenuNode.XPathSelectElements("/");
foreach (XElement segmentNode in segmentNodes)
{
var segmentAlignment = (string)segmentNode.Attribute("Name");
Console.Writeline(segmentAlignment);
}
Google「遞歸」 –