public Task <GeoAddress> GetAddressDetailAsync(string id) { var client = GetClient(PlaceDetailsServiceUrl); var resource = GetPlaceDetailRequest(id); Func <PlaceDetailResponse, GeoAddress> selector = response => ResourcesExtensions.ConvertGeoObjectToAddress(response.Result); return(HandleGoogleResultAsync(() => client.GetAsync <PlaceDetailResponse>(resource), selector, new GeoAddress())); }
public async Task <GeoPlace> GetPlaceDetailAsync(string id) { var client = GetClient(PlaceDetailsServiceUrl); var resource = GetPlaceDetailRequest(id); Func <PlaceDetailResponse, GeoPlace> selector = response => new GeoPlace { Id = id, Name = response.Result.Formatted_address, Address = ResourcesExtensions.ConvertGeoObjectToAddress(response.Result) }; return(await HandleGoogleResultAsync(() => client.GetAsync <PlaceDetailResponse>(resource), selector, new GeoPlace()).ConfigureAwait(false)); }