XML可能无法正确返回XML

问题描述:

我正在尝试创建一个剩余服务,该服务将返回包含信息属性的XML元素列表。XML可能无法正确返回XML

当我从浏览器运行这个剩余的服务器时,我得到正确显示的XML返回了浏览器。但是,当我以Windows窗体的形式运行它,并尝试从XML中提取属性时,它只提取第一个。

这是显示给浏览器的XML。

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 
<catalog version="1.1"> 
<dataset id="XXX" name="XXX" description="XXX" datatype="XXX" rank="XXX" saropsrank="XXX" format="XXX" starttime="XXX" endtime="XXX" extentleft="XXX" extentbottom="XXX" extentright="XXX" extenttop="XXX" source="XXX" wmslayeridstr="XXX" confidence="XXX" directionfrom="XXX" image="XXX" /> 
</catalog> 
</string> 

然而,当我流转换为字符串,并显示XML到一个文本框,我得到&lt;,而不是<&gt;而不是>。我认为这是因为我将其转换为字符串。

这是我必须检索XML的代码。

WebRequest restWebRequest = WebRequest.Create(url); 
      restWebRequest.Method = "GET"; 
      restWebRequest.ContentType = "application/x-www-form-urlencoded"; 

      // Send the web request, and get the response from 
      WebResponse response = restWebRequest.GetResponse(); 
      Stream responseStream = response.GetResponseStream(); 

      StreamReader reader = new StreamReader(responseStream); 
      string responseFromServer = reader.ReadToEnd(); 
      textBox1.Text = responseFromServer; 

我尝试从responseStream中提取XML元素。

任何帮助都会很棒。

谢谢!

对于我以下代码给出正确的输出。

WebRequest restWebRequest = WebRequest.Create(@"C:\TestProjects\WebApplication4\WebApplication4\XMLFile1.xml"); 
restWebRequest.Method = "GET"; 
restWebRequest.ContentType = "application/x-www-form-urlencoded"; 

// Send the web request, and get the response from 
WebResponse response = restWebRequest.GetResponse(); 
Stream responseStream = response.GetResponseStream(); 

StreamReader reader = new StreamReader(responseStream); 
string responseFromServer = reader.ReadToEnd(); 
TextBox1.Text = responseFromServer; 

我想你是从数据库中获取XML。尝试使用CDATA标签。

我希望这些链接将是对您有用:C# object to XML

http://weblogs.sqlteam.com/mladenp/archive/2008/10/21/Different-ways-how-to-escape-an-XML-string-in-C.aspx