Bing Maps APIへのxml応答で値にアクセスしようとしています。 var responseXml = xdoc.Root.Element("Response").Element("ResourceSets").Element("ResourceSet").Element("EstimatedTotal").Value;
のような処理を試みましたが、エラーが発生しました。CノードのXDocumentから子ノード要素の値を取得する方法
どのようにこの問題を解決するためのアイデアですか?コード
private void RequestCompleted(IAsyncResult result)
{
var request = (HttpWebRequest)result.AsyncState;
var response = (HttpWebResponse)request.EndGetResponse(result);
StreamReader stream = new StreamReader(response.GetResponseStream());
try
{
XDocument xdoc = XDocument.Load(stream);
var responseXml = xdoc.Root.Element("Response").Element("ResourceSets").Element("ResourceSet").Element("EstimatedTotal").Value;
}
catch (Exception ex)
{
MessageBox.Show("Error" + ex.Message);
}
}
XML応答
これは意味がありますが、 'GeocodePoint'内で' Latitude'と 'Longitude'の値をどうやって得ることができますか? – daveskylark
@jedi nerd xdoc.Descendants( "GeocodePoint")。Element( "Latitude")は2つ以上のGeoCodePointを持っているようですので、foreachまたはlinqを使用してください。 –
@jedinerd XMLドキュメントの各子孫には、Elementsを持つ子があります。私のアドバイスを受けて、デバッガまたはイミディエイトウィンドウ内のコード内のxDocオブジェクトを見てください。文字通り、SOに関するアドバイスよりも多くの方法をお手伝いできる数多くの方法があります。私は元の答えに何かを加えました。 –