コード例 #1
0
        public async Task <List <PlaceAttributes> > GetData(LocationAttributes Position, String DeparturePlace, String ArrivalDateTime, String DepartureDateTime, String PointOfInterest)
        {
            try
            {
                //using (HttpClient client = new HttpClient())
                //{
                var client   = _httpClientFactory.CreateClient(Constants.GoogleClient);
                Uri endpoint = client.BaseAddress;     // Returns GoogleApi
                var Key      = _iconfiguration["GoogleAPI"];
                //var Url = endpoint.ToString() + "maps/api/place/nearbysearch/json?location=18.579343,73.9089168&radius=1000&type=" + PointOfInterest + "&key=" + Key;
                var Url      = endpoint.ToString() + "maps/api/place/nearbysearch/json?location=" + Position.LatitudePosition + "," + Position.LongitudePosition + "&radius=1000&type=" + PointOfInterest + "&key=" + Key;
                var client1  = _httpClientFactory.CreateClient();
                var response = await client1.GetAsync(Url);

                response.EnsureSuccessStatusCode();
                string responseBody = await response.Content.ReadAsStringAsync();

                RootobjectOfData       data = JsonConvert.DeserializeObject <RootobjectOfData>(responseBody);
                List <PlaceAttributes> Data = data.results.TransalateData(Key, endpoint);
                return(Data);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            return(null);
        }
コード例 #2
0
        public async Task <DistanceTimeAttributes> GetDistanceTime(string DeparturePlace, float DestinationLatitude, float DestinationLongitude)
        {
            try
            {
                LocationAttributes SourcePosition = _getLatitudeLongitude.Get(DeparturePlace);
                var client   = _httpClientFactory.CreateClient("GoogleClient");
                Uri endpoint = client.BaseAddress; // Returns GoogleApi
                var Key      = _iconfiguration["GoogleAPI"];
                var Url      = endpoint.ToString() + "maps/api/directions/json?origin=" + SourcePosition.LatitudePosition + "," + SourcePosition.LongitudePosition + "&destination=" + DestinationLatitude + "," + DestinationLongitude + " &key=" + Key;
                var client1  = _httpClientFactory.CreateClient();
                var response = await client1.GetAsync(Url);

                response.EnsureSuccessStatusCode();
                string responseBody = await response.Content.ReadAsStringAsync();

                RootobjectOfDirection  data = JsonConvert.DeserializeObject <RootobjectOfDirection>(responseBody);
                DistanceTimeAttributes Data = data.routes.TransalateDistanceTime();
                return(Data);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            return(null);
        }
コード例 #3
0
        public async Task <List <PlaceAttributes> > GetInsideOutsideData(LocationAttributes Position, String DeparturePlace, String ArrivalDateTime, String DepartureDateTime, String PointOfInterest)
        {
            List <PlaceAttributes> OutsideData = await _getOutsideData.GetAllData(DeparturePlace, ArrivalDateTime, DepartureDateTime, PointOfInterest);

            List <PlaceAttributes> InsideData = await _getInsideData.GetData(Position, DeparturePlace, ArrivalDateTime, DepartureDateTime, PointOfInterest);

            for (int index = 0; index < InsideData.Count; index++)
            {
                OutsideData.Add(InsideData[index]);
            }

            return(OutsideData);
        }
コード例 #4
0
        public LocationAttributes Get(string CityName)
        {
            LocationAttributes Position = new LocationAttributes();

            Position.Address = CityName;
            var locationService = new GoogleLocationService(apikey: "AIzaSyA9v-ByUMauD8TazXdViq_f7RF-EHru86A");
            var Point           = locationService.GetLatLongFromAddress(Position.Address);

            Position.LatitudePosition  = Point.Latitude;
            Position.LongitudePosition = Point.Longitude;

            return(Position);
        }
コード例 #5
0
        //PointOfInterest is any Stores/Restorents...etc
        public async Task <IActionResult> GetInsideData(String DeparturePlace, String ArrivalDateTime, String DepartureDateTime, String PointOfInterest)
        {
            LocationAttributes Position = _getLatitudeLongitude.Get(DeparturePlace + "Airport");
            var Data = await _getData.GetData(Position, DeparturePlace, ArrivalDateTime, DepartureDateTime, PointOfInterest);

            if (Data != null)
            {
                return(Ok(Data));
            }
            else
            {
                return(BadRequest("Not Found"));
            }
        }
コード例 #6
0
        public LocationAttributes GetPosition(string Location)
        {
            LocationAttributes Position = _getLatitudeLongitude.Get(Location);

            return(Position);
        }