我正在嘗試使用Bing地圖API,它會返回一個XML文檔。該文件(簡化但保持結構)是無法使用XDocument查詢XML文檔並獲得期望的結果
<Response xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.microsoft.com/search/local/ws/rest/v1">
<StatusCode>
200
</StatusCode>
<ResourceSets>
<ResourceSet>
<Resources>
<TrafficIncident>
<Severity>
Minor
</Severity>
<RoadClosed>
false
</RoadClosed>
</TrafficIncident>
</Resources>
</ResourceSet>
</ResourceSets>
</Response>
在這種情況下,只有1個流量問題,但可能有很多。
我想如果道路被關閉提取和嚴重性
的XML存儲在xd
對象(類型XDocuement
)
下工作正常(沒有錯誤,但返回所有元素)
var allNodes = (from x in xd.Descendants()
select x).ToList();
,但如果我添加元素的名稱則返回0項
列表我認爲上面的代碼是說:
從XD,抓住所有的「資源」元素的後裔
如果我的理解是正確的,爲什麼它返回0結果
只是爲了澄清,是'xd'的''Response'元素的根?即你沒有加載不同的元素,對吧? – Yuck
此外,我目前無法測試,但試試'xd.Descendants(「// Resources」)' – Yuck
嗯......正如我所說,目前無法測試。有一些方法可以讓你使用XPath來查詢文檔結構。我想不起來。 – Yuck