public static LocationRootObject LoadLocation(string query, string secondquery, string town, int radius) { string url = ""; if (secondquery == null) { url = $"https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={town}" + $"&radius={radius}&type={query}&key=AIzaSyA5jOPVeNOqU6lLscGSE3t665ejKNjrGQI"; } else { url = $"https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=" + $"{ secondquery }&key=AIzaSyA5jOPVeNOqU6lLscGSE3t665ejKNjrGQI"; } using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync(url).GetAwaiter().GetResult(); if (response.IsSuccessStatusCode) { var responseContent = response.Content; LocationRootObject root = responseContent.ReadAsAsync <LocationRootObject>().GetAwaiter().GetResult(); return(root); } else { throw new Exception(response.ReasonPhrase); } } }
public void LoadRoot(GeneratorContext context, string query) { var locations = new List <Miejsce>(); LocationRootObject root = LocationProcessor.LoadLocation(query); foreach (var i in root.results) { locations.Add(new Miejsce() { MiejsceId = i.place_id, Lat = i.geometry.location.lat, Lng = i.geometry.location.lng, Name = i.name, visitCount = 0, type = query }); } locations.ForEach(g => context.Locations.AddOrUpdate(g)); context.SaveChanges(); }
public void LoadRoot(GeneratorContext context, string query, string town, int radius) { string nextPageToken = null; var locations = new List <Location>(); do { LocationRootObject root = LocationProcessor.LoadLocation(query, nextPageToken, town, radius); foreach (var i in root.results) { locations.Add(new Location() { LocationId = i.place_id, Lat = i.geometry.location.lat, Lng = i.geometry.location.lng, Name = i.name, visitCount = 0, type = query }); } nextPageToken = root.next_page_token; }while (nextPageToken != null); locations.ForEach(g => context.Locations.AddOrUpdate(g)); context.SaveChanges(); }
public static LocationRootObject LoadLocation(string query) { string url = $"https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=50.01241376861261,20.988371372222904&type={ query }&radius=500&key=AIzaSyA5jOPVeNOqU6lLscGSE3t665ejKNjrGQI"; using (var client = new HttpClient()) { client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync(url).GetAwaiter().GetResult(); if (response.IsSuccessStatusCode) { var responseContent = response.Content; LocationRootObject root = responseContent.ReadAsAsync <LocationRootObject>().GetAwaiter().GetResult(); return(root); } else { throw new Exception(response.ReasonPhrase); } } }
public APIReturnModel CallTripAdvisorAPI() { APIReturnModel returnModel = new APIReturnModel(); try { string TAkey = TripAdvisorSettings.TripAdvisorKey; using (var httpClient = new HttpClient()) { httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); foreach (var locationID in TripAdvisorSettings.TripAdvisorLocationIDs.Split('|')) { foreach (var language in TripAdvisorSettings.TripAdvisorLanguages.Split('|')) { LocationModel model = new LocationModel(); model.LocationID = locationID; model.Language = language; if (TripAdvisorSettings.TripAdvisorLocationURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorLocationURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; LocationRootObject locationrootObject = JsonConvert.DeserializeObject <LocationRootObject>(response.Content.ReadAsStringAsync().Result); model.LocationDetails = locationrootObject; } if (TripAdvisorSettings.TripAdvisorActivityURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorActivityURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; ActivityRootObject activitiesrootObject = JsonConvert.DeserializeObject <ActivityRootObject>(response.Content.ReadAsStringAsync().Result); model.ActivitiesDetails = activitiesrootObject; } if (TripAdvisorSettings.TripAdvisorAttractionsURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorAttractionsURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; AttractionRootObject attractionsrootObject = JsonConvert.DeserializeObject <AttractionRootObject>(response.Content.ReadAsStringAsync().Result); model.AttractionDetails = attractionsrootObject; } if (TripAdvisorSettings.TripAdvisorHotelsURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorHotelsURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; HotelRootObject hotelsrootObject = JsonConvert.DeserializeObject <HotelRootObject>(response.Content.ReadAsStringAsync().Result); model.HotelDetails = hotelsrootObject; } if (TripAdvisorSettings.TripAdvisorRestaurantsURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorRestaurantsURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; RestaurantRootObject restaurantrootObject = JsonConvert.DeserializeObject <RestaurantRootObject>(response.Content.ReadAsStringAsync().Result); model.RestaurantDetails = restaurantrootObject; } if (TripAdvisorSettings.TripAdvisorReviewsURL != null) { string url = string.Format(TripAdvisorSettings.TripAdvisorReviewsURL, locationID, TAkey, language); var response = httpClient.GetAsync(url).Result; ReviewRootObject reviewrootObject = JsonConvert.DeserializeObject <ReviewRootObject>(response.Content.ReadAsStringAsync().Result); model.ReviewDetails = reviewrootObject; } returnModel.locationModels.Add(model); } } } } catch (Exception ex) { throw; } return(returnModel); }