StreamReader クラスを使用して、ジオコーディング プロセス用の XML を Google から取得します。
StreamReader srGeoCode = new StreamReader(WebRequest.Create(Url).GetResponse().GetResponseStream());
String GeoCodeXml = srGeoCode.ReadToEnd();
XmlDocument XmlDoc = new XmlDocument();
GeoCode oGeoCode = new GeoCode();
XmlDoc.Load(GeoCodeXml);
XML は返されますが、XML に \n やその他のエクストラが追加されます
<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<kml xmlns=\"http://earth.google.com/kml/2.0\"><Response>\n <name>
VB に同じコードがありますが、これは実行されません。このコンソール アプリの VB バージョンを使用して、自分の情報を正常にジオコーディングできます。
C# バージョンが、取得した XML にこの余分なデータを追加する理由はありますか? すべてを C# に変換するために最善を尽くしています。私はVBでコーディングを楽しんでいます。
VBコードは次のとおりです。
Dim wreqGeoCode As WebRequest = WebRequest.Create(strURL)
Dim wresGeoCode As WebResponse = wreqGeoCode.GetResponse
Dim srGeoCode As New StreamReader(wresGeoCode.GetResponseStream())
Dim strXML As String = srGeoCode.ReadToEnd()
Dim xmlDoc As New XmlDocument
xmlDoc.LoadXml(strXML)