コード例 #1
0
 public static IEnumerable <GeocodingResponse> Geocode(MapsApiContext context, IEnumerable <LatLng> locations)
 {
     foreach (var location in locations)
     {
         var request = new GeocodingRequest(location, context);
         yield return(request.GetResponse());
     }
 }
コード例 #2
0
        public static IEnumerable <GeocodingResponse> GeocodeAsync(MapsApiContext context, IEnumerable <LatLng> locations)
        {
            var request = new GeocodingRequest(context);

            foreach (var location in locations)
            {
                request.Location = location;
                yield return(request.GetResponseAsync());
            }
        }
コード例 #3
0
        public static IEnumerable <GeocodingResponse> Geocode(MapsApiContext context, IEnumerable <string> addresses)
        {
            var request = new GeocodingRequest(context);

            foreach (var address in addresses)
            {
                request.Address = address;
                yield return(request.GetResponse());
            }
        }
コード例 #4
0
        public static async Task <IEnumerable <GeocodingResponse> > GeocodeAsync(MapsApiContext context, IEnumerable <LatLng> locations)
        {
            var result  = new List <GeocodingResponse>();
            var request = new GeocodingRequest(context);

            foreach (var location in locations)
            {
                request.Location = location;
                result.Add(await request.GetResponseAsync());
            }

            return(result);
        }
コード例 #5
0
        public static async Task <IEnumerable <GeocodingResponse> > GeocodeAsync(MapsApiContext context, IEnumerable <string> addresses)
        {
            var result = new List <GeocodingResponse>();

            foreach (var address in addresses)
            {
                var request = new GeocodingRequest(address, context);
                //request.Address = address;
                result.Add(await request.GetResponseAsync());
            }

            return(result);
        }
コード例 #6
0
        /// <summary>
        /// Loads the context fro provided <see cref="NameValueCollection"/>.
        /// </summary>
        /// <param name="settings"></param>
        /// <returns></returns>
        public static MapsApiContext Load(NameValueCollection settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            var prefix  = "GoogleMaps";
            var context = new MapsApiContext
            {
                ApiKey        = settings[$"{prefix}." + nameof(ApiKey)],
                GeocodeApiUrl = settings[$"{prefix}." + nameof(GeocodeApiUrl)] ?? DefaultGeocodeApiUrl
            };

            context.AutoRetry  = settings.GetBool($"{prefix}." + nameof(AutoRetry), DefaultAutoRetry);
            context.RetryDelay = settings.GetInt($"{prefix}." + nameof(RetryDelay), DefaultRetryDelay);
            context.RetryTimes = settings.GetInt($"{prefix}." + nameof(RetryTimes), DefaultRetryTimes);

            return(context);
        }
コード例 #7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GeocodingRequest"/> class.
 /// </summary>
 /// <param name="location"></param>
 /// <param name="context"></param>
 public GeocodingRequest(LatLng location, MapsApiContext context = null)
 {
     _context = context ?? MapsApiContext.Default;
     Location = location;
 }
コード例 #8
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GeocodingRequest"/> class.
 /// </summary>
 /// <param name="address"></param>
 /// <param name="context"></param>
 public GeocodingRequest(string address, MapsApiContext context = null)
 {
     _context = context ?? MapsApiContext.Default;
     Address  = address;
 }
コード例 #9
0
 public static async Task <IEnumerable <GeocodingResponse> > GeocodeAsync(MapsApiContext context, params string[] addresses)
 {
     return(await GeocodeAsync(context, addresses.AsEnumerable()));
 }
コード例 #10
0
 public static async Task <GeocodingResponse> GeocodeAsync(MapsApiContext context, string address)
 {
     return(await new GeocodingRequest {
         Address = address
     }.GetResponseAsync());
 }
コード例 #11
0
 public static IEnumerable <GeocodingResponse> Geocode(MapsApiContext context, params LatLng[] locations)
 {
     return(Geocode(context, locations.AsEnumerable()));
 }
コード例 #12
0
 public static IEnumerable <GeocodingResponse> Geocode(MapsApiContext context, params string[] addresses)
 {
     return(Geocode(context, addresses.AsEnumerable()));
 }
コード例 #13
0
 public static GeocodingResponse Geocode(MapsApiContext context, LatLng location)
 {
     return(new GeocodingRequest(location, context).GetResponse());
 }
コード例 #14
0
 public static GeocodingResponse Geocode(MapsApiContext context, string address)
 {
     return(new GeocodingRequest(address, context).GetResponse());
 }
コード例 #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GeocodingRequest"/> class.
 /// </summary>
 /// <param name="latitude"></param>
 /// <param name="longitude"></param>
 /// <param name="context"></param>
 public GeocodingRequest(double latitude, double longitude, MapsApiContext context)
 {
     _context = context ?? MapsApiContext.Default;
     Location = new LatLng(latitude, longitude);
 }
コード例 #16
0
 public static async Task <GeocodingResponse> GeocodeAsync(MapsApiContext context, LatLng location)
 {
     return(await new GeocodingRequest {
         Location = location
     }.GetResponseAsync());
 }
コード例 #17
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GeocodingRequest"/> class.
 /// </summary>
 /// <param name="context"></param>
 public GeocodingRequest(MapsApiContext context = null)
 {
     _context = context ?? MapsApiContext.Default;
 }
コード例 #18
0
 public static async Task <IEnumerable <GeocodingResponse> > GeocodeAsync(MapsApiContext context, params LatLng[] locations)
 {
     return(await GeocodeAsync(context, locations.AsEnumerable()));
 }