Grüße alle.Root-Element fehlt Fehler für .net XmlDocument.load()
Ich erhalte einen asp.net Fehler "Root-Element fehlt", wenn ich die Ergebnisse einer REST-Anfrage in ein XmlDocument laden. Dieselbe REST-Anfrage sieht gut aus und gibt gültige Ergebnisse zurück, wenn ich sie mit dem Firefox-Addon "RESTTEST" ausführe. Aber der Fehler zeigt sich in der C# .net Code-behind. Weiß jemand, was das verursachen könnte? Hier ist der relevante Code:
HttpWebResponse response = null;
response = (HttpWebResponse)request.GetResponse();
HttpStatusCode statusCode = response.StatusCode;
Stream responseData = response.GetResponseStream();
StreamReader sr = new StreamReader(responseData);
XmlTextReader reader = new XmlTextReader(sr);
XmlDocument doc = new XmlDocument();
doc.Load(sr); // here is where the error occurs.
Mein Ziel ist es, die Ergebnisse der REST-Anforderung in ein Verfahrweg-able XML-Datenmodell zu laden, die ich dann Elemente und ihre Werte aus greifen kann.
Wenn ich diesen Code verwende, bekomme ich die erwarteten Ergebnisse. Was ist der Unterschied?
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element: // The node is an Element.
Response.Write("Element Name: " + reader.Name);
while (reader.MoveToNextAttribute()) // Read attributes.
Response.Write(" " + reader.Name + "='" + reader.Value + "'");
Response.Write("<br />");
break;
case XmlNodeType.Text: //Display the text in each element.
Response.Write("Element value: " + reader.Value);
Response.Write("Read key=" + reader.Name + ", value=" + reader.Value + "<br/>");
break;
case XmlNodeType.EndElement: //Display end of element.
Response.Write("<br />");
break;
}
}
Können Sie das Xml-Objekt, das Sie von REST TEST erhalten haben, posten, damit wir das betrachten können. –
Es ist wahrscheinlich, dass das XML nicht XML oder anderweitig fehlerhaft ist. Können Sie uns ein Beispiel für die Ergebnisse der REST-Anfrage geben? –