public GooglePlaceDetails Search(string placeId, out GooglePlaceRequest.GoogleResponseStatus status) { var uri = String.Format(MapUri, placeId, ApiKey); var httpRequest = (HttpWebRequest)HttpWebRequest.Create(uri); httpRequest.ContentType = "application/json; charset=utf-8"; httpRequest.Method = WebRequestMethods.Http.Get; httpRequest.Accept = "application/json"; using (HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse()) { using (var sr = new StreamReader(httpResponse.GetResponseStream())) { var json = sr.ReadToEnd(); return(GooglePlaceDetailsResult.ProcessResult(json, out status)); } } }
public async Task <GooglePlaceDetailsResult> ParsePlacesDetailsAsync(string json) { GooglePlaceDetailsResult result = new GooglePlaceDetailsResult(); try { PlaceDetailsResult placeDetails = await Task.Run(() => JsonConvert.DeserializeObject <PlaceDetailsResult>(json)); if (placeDetails.Status != "OK") { result.IsSucess = false; } result.PlaceDetails = ConvertToPlaceDetails(placeDetails.PlaceDetailsGoogle); return(result); } catch { result.IsSucess = false; return(result); } }