public async Task <GooglePlaceNearbySearchRootObject> GetAsync(GooglePlaceNearbySearchInput input)
        {
            var uri        = _googleUriProvider.Create(input);
            var resultJson = await _httpClient.GetStringAsync(uri);

            var result = JsonConvert.DeserializeObject <GooglePlaceNearbySearchRootObject>(resultJson);

            result.resultJson = resultJson;
            return(result);
        }
Exemple #2
0
        public string Create(GooglePlaceNearbySearchInput input)
        {
            StringBuilder builder = new StringBuilder();

            builder.Append($"{Output}?key={GoogleApiKey}");
            builder.Append($"&location={(input.Location.lat).ToString(System.Globalization.CultureInfo.InvariantCulture)},{input.Location.lng.ToString(System.Globalization.CultureInfo.InvariantCulture)}");

            if (input.Radius != null)
            {
                builder.Append($"&radius={input.Radius}");
            }
            else
            {
                builder.Append($"&rankby=distance");
            }
            builder.Append($"&language={input.Language.GetString()}");

            if (!String.IsNullOrWhiteSpace(input.Keyword))
            {
                builder.Append($"&keyword={EncodeString(input.Keyword)}");
            }


            if (input.Type != null)
            {
                if (!String.IsNullOrWhiteSpace(input.Type.Name))
                {
                    builder.Append($"&type={input.Type.Name}");
                }
            }

            if (input.Minprice != null)
            {
                builder.Append($"&minprice={input.Minprice}");
            }

            if (input.Maxprice != null)
            {
                builder.Append($"&maxprice={input.Maxprice}");
            }

            return(builder.ToString());
        }