Example #1
0
        /// <summary>
        /// return groups of nannies acording to their distance
        /// </summary>
        /// <param name="mo"></param>
        /// <returns></returns>
        public IEnumerable <IGrouping <int, Nanny> > Distance(Mother mo, myEnum.TipeOfTravel tipeOfTravel)
        {
            IEnumerable <IGrouping <int, Nanny> > query = from nan in getListOfNannies()
                                                          group nan by CalculateDistance(tipeOfTravel, mo.searchArea, nan.Address) / 5;

            return(query);
        }
Example #2
0
        /// <summary>
        /// calculate distance from source to destenation using google maps
        /// </summary>
        /// <param name="source"></param>
        /// <param name="dest"></param>
        /// <returns></returns>
        ///
        public static int CalculateDistance(myEnum.TipeOfTravel tipeOfTravel, string source, string dest)
        {
            var drivingDirectionRequest = new DirectionsRequest
            {
                TravelMode  = tipeOfTravel == myEnum.TipeOfTravel.walking ? TravelMode.Walking : TravelMode.Driving,
                Origin      = source,
                Destination = dest,
            };
            DirectionsResponse drivingDirections = GoogleMaps.Directions.Query(drivingDirectionRequest);
            Route route = drivingDirections.Routes.First();
            Leg   leg   = route.Legs.First();

            return(leg.Distance.Value);
        }