2014-03-06 314 views
0

我正在使用XmlTextWriter並從加載其他服務的URL時出現錯誤。錯誤是「路徑中的非法字符」。我曾嘗試使用@「https://www.foo.com/foobar/rest-1/Data/Test?sel=GeneratedFrom&find=TS-01108&findin=Parent.Number路徑c#中的非法字符 - XmlTextWriter

當我使用調試器進行檢查時,發現該值有引號,但我懷疑它可能是「?」,「=」,「&」或「。」。也許。

string URL = "https://www.foo.com/foobar/rest-1/Data/Test?sel=GeneratedFrom&find=TS-01108&findin=Parent.Number"; 

string XML_FILENAME = URL + ".xml"; 

     WebResponse response = utils.GetRestResponse(URL); 
     if (response != null) 
     { 
      XmlDocument xmldoc = new XmlDocument(); 
      xmldoc.Load(XmlReader.Create(response.GetResponseStream())); 

      // Illegal characters in path happens here 
      XmlTextWriter writer = new XmlTextWriter(XML_FILENAME, null); 
+0

你需要一個文件,而不是一個網址。 – Xaruth

回答

2

我想你誤解了第一個XmlTextWriter初始化參數的目的。如果一個字符串參數在那裏傳遞,那應該是一個文件名而不是一個Web資源。

+0

它使用「https://www.foo.com/foobar/rest-1/Data/Test/12345」。然後它爲我提供「測試」12345或https://www.foo.com/foobar/rest-1/Data/Test的所有數據將返回所有測試的所有屬性值。所以,我可以加載所有測試的xml數據,並以這種方式獲取特定數據。我只是試圖查看是否可以從查詢中加載特定的一組數據。謝謝你澄清,這是有道理的。 –