2016-08-24 119 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();