2016-08-24 79 views
-1

我必須從URL(http://data.com:7900)檢索數據。爲此,技術人員向我發送了一個DTD,XMLRequestXMLResponse文件。我對這些事情不太瞭解。我想發送整個XMLRequest到服務(url)得到我的服務(XMLResponse)的響應。 DTD將驗證XML格式。但是...c#xml請求與xml文件

如何用C#完成工作? PS:它也可以幫助我用一個工具(GUI,CMD,...)來測試,以確保所有服務都可以正常使用。

回答

0

好吧,我想我明白了!

 var xmlString = string.Empty; 
     var xmlPath = "pathToFile.xml"; 
     if (File.Exists(xmlPath)) 
     { 
      xmlString = File.ReadAllText(xmlPath); 
     } 
     var xmlBytes = System.Text.Encoding.ASCII.GetBytes(xmlString); 

     var url = "http://data.com:7000"; 
     var request = (HttpWebRequest)WebRequest.Create(url); 
     request.Method = "POST"; 
     request.ContentType = "text/xml;charset=utf-8"; 
     request.ContentLength = xmlBytes.Length; 

     var requestStream = request.GetRequestStream(); 
     requestStream.Write(xmlBytes, 0, xmlBytes.Length); 
     requestStream.Close(); 

     var response = (HttpWebResponse)request.GetResponse(); 
     var streamReader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.Default); 
     var result = streamReader.ReadToEnd(); // the respond is in here! 

     result.Close(); 
     response.Close();