private static GlobalAddress ParsedJSONAddress(HttpResponseMessage response) { GlobalAddress globalAddress = new GlobalAddress(); var content = response.Content.ReadAsStringAsync(); JObject parsedJson = JObject.Parse(content.Result); JToken firstResults = parsedJson["results"][0]; JToken addressComponents = firstResults["address_components"]; foreach (var component in addressComponents) { foreach (var type in component["types"]) { if (IsNotCountryType(type)) { continue; } JToken countryToken = component["long_name"]; globalAddress.country = countryToken.ToString(); break; } } JToken streetAddress = firstResults["formatted_address"]; globalAddress.streetAddress = streetAddress.ToString(); JToken loc = firstResults["geometry"]["location"]; JToken lat = loc["lat"]; JToken lng = loc["lng"]; globalAddress.lat = Double.Parse(lat.ToString()); globalAddress.lng = Double.Parse(lng.ToString()); return(globalAddress); }
public ReverseGeocodingResponse(ReverseGeocodingRequest request, string googleMapsAPIKey) { string query = ReverseGeocodingQuery(request, googleMapsAPIKey); var result = RunQueryAsync(query); Address = result.Result; }