0
我一直在閱讀各種教程,但無法弄清楚有條件地解析下面的XML結構,其中用戶輸入一個國家的名稱,然後收到國會大廈的名稱。解析一個複雜嵌套的XML
當我用下面的代碼測試它時,我沒有彈出MessageBox。
C#代碼
XDocument xd = XDocument.Load("Foo.xml");
foreach (var state in xd.Descendants("State"))
{
Messagebox.Show(state.Attribute("Name").Value);
}
Foo.xml
<Main>
<Title></Title>
<Planet Name="Earth">
<Continent Name="North America">
<Country Name="USA">
<State Name="Illinois" Capital="Springfield"></State>
<State Name="Alabama" Capital="Montgomery"></State>
...
</Country>
<Country Name="Canada">
<State Name="Alberta" Capital="Edmonton"></State>
<State Name="British Columbia" Capital="Victoria"></State>
<State Name="Manitoba" Capital="Winnipeg"></State>
....
</Country>
<Country> ... </Country>
<Country> ... </Country>
<Country> ... </Country>
</Continent>
</Planet>
</Main>
名稱是否缺少在LINQ where子句? – Hybridzz
您是否只有在XML中被細分爲國家的國家?我住在一個沒有國家和許多互聯網上的地址輸入表格的(小)國家要求我不能提供的國家。當不同的國家擁有同名的國家時,你想要返回什麼?我不知道是否存在兩個這樣的國家,但在蘇聯分裂成獨立國家之前,格魯吉亞是蘇聯的一個國家,所以這是可能的。 –
@Hybridzz:我編輯了我的測試代碼,使其更簡單。 – KMC