こんにちは。
REST 要求の結果を XmlDocument に読み込むと、asp.net エラー "ルート要素が見つかりません" が表示されます。Firefox アドオン「RESTTEST」を使用して実行すると、同じ REST リクエストが正常に表示され、有効な結果が返されます。しかし、エラーは C#.net コード ビハインドに表示されます。誰がこれを引き起こす可能性があるか知っていますか? 関連するコードは次のとおりです。
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.
私の目標は、REST 要求の結果をトラバース可能な XML データ モデルに読み込み、そこから要素とその値を取得できるようにすることです。
このコードを使用すると、期待どおりの結果が得られます。違いはなんですか?
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;
}
}