我是C#的新手,但是我有一個Java和VB.NET的背景,因此跳入很容易。本週末,我開始使用C#開發一個新的迷你項目,並從互聯網上提供一個公共XML源。但是我在加載XML時遇到問題。這裏是我的代碼:C#不會加載某些XML,但可以在瀏覽器中工作
string url = ... ;
...
XmlDocument xmlDoc = new XmlDocument();
...
try{
xmlDoc.Load(url);
}catch(Exception e){
Console.WriteLine(e);
}
當我嘗試加載XML,它拋出一個異常:
http://i.stack.imgur.com/Xo2Ra.png (新手不能附加圖片,抱歉)
我是不是在所有當我的代碼不起作用時感到驚訝。通過找出問題所在,我開始了標準的故障排除過程。我完全希望我的代碼有問題。爲了測試這個理論,我在網上找到了一個隨機的XML feed,並將它複製到我的代碼中。令我驚訝的是,它裝載得很好。現在我的懷疑轉向了目標XML。它可以在Chrome和FireFox中正常運行(加載時間爲.734秒),不需要任何憑據(向公衆開放),並且是有效的/格式良好的。
然後我想起了幾個月前我寫過的使用同一個feed的JavaScript。我解僱了,並發現它也完美地工作。
我在這裏虧本,因爲我的代碼和XML似乎都很好。有誰知道這可以解決嗎?我是否需要使用HttpWebRequest並傳遞給XmlDocument(我不知道該怎麼做)?有沒有更多的方法來解決這個問題?
請發佈您的XML文件。 –
XmlDoc.Load對於從Web中獲取內容相對比較原始。你處理的URL是什麼?什麼協議?它是安全的嗎? (https?)在使用XmlDocument.Load時都會出現問題 – Polity
以下是直接從地址欄中輸入的URL:http://stats.us.playstation.com/warhawk/XmlFeedAction.action?start=1&end= 1 ...編輯:我只是在Chrome中加載XML非常好,並直接複製/粘貼到這個評論的URL。當我檢查鏈接時,我收到了404錯誤。 – Sonic42