public async Task <GooglePlaceDetailsRootObject> GetAsync(GooglePlaceDetailsInput input) { var uri = _googleUriProvider.Create(input); var resultJson = await _httpClient.GetStringAsync(uri); var result = JsonConvert.DeserializeObject <GooglePlaceDetailsRootObject>(resultJson); result.resultJson = resultJson; result.inputUri = uri; return(result); }
public string Create(GooglePlaceDetailsInput input) { StringBuilder builder = new StringBuilder(); builder.Append($"{Output}?key={GoogleApiKey}"); builder.Append($"&placeid={input.PlaceId}"); builder.Append($"&language={input.Language.GetString()}"); if (input.Fields.Count > 0) { var fields = String.Join(",", input.Fields.Select(x => x.Name).ToArray()); builder.Append($"&fields={fields}"); } return(builder.ToString()); }