private Address[] ProcessWebResponse(WebResponse response) { XPathNavigator nav = this.LoadXmlResponse(response).CreateNavigator(); this._namespaceManager = this.CreateXmlNamespaceManager(nav); GoogleStatusCode code = (GoogleStatusCode)int.Parse(this.EvaluateXPath("string(kml:kml/kml:Response/kml:Status/kml:code)", nav)); List <Address> list = new List <Address>(); if (code == GoogleStatusCode.Success) { XPathExpression expr = nav.Compile("kml:kml/kml:Response/kml:Placemark"); expr.SetContext(this._namespaceManager); XPathNodeIterator iterator = nav.Select(expr); while (iterator.MoveNext()) { list.Add(this.RetrieveAddress(iterator.Current)); } } return(list.ToArray()); }
/// <summary> /// Initializes a new instance of the <see cref="GoogleGeocodeResult"/> class. /// </summary> /// <param name="latitude">The latitude of the result.</param> /// <param name="longitude">The longitude of the result.</param> /// <param name="accuracyCode">The accuracy of the result.</param> /// <param name="statusCode">The status of the geocode request.</param> public GoogleGeocodeResult(double latitude, double longitude, GoogleAccuracyCode accuracyCode, GoogleStatusCode statusCode) : base(latitude, longitude) { this.accuracyCode = accuracyCode; this.statusCode = statusCode; }