public ActionResult SaveItinerary(string newItinerary) { //1. Decode the received JSON string newItinerary to get an Itinerary object. //2. Use the result to populate a TripItinerary object as defined by the web service's data contract //3. Save the TripItinerary object to the WCF Web Service TripService. //Add your code here\ TripServiceClient client = new TripServiceClient(); Console.WriteLine(newItinerary); //Models.Itinerary itineraryInfo = JsonConvert.DeserializeObject<Models.Itinerary>(newItinerary); if (!string.IsNullOrWhiteSpace(newItinerary)) { Models.Itinerary itineraryInfo = JsonConvert.DeserializeObject <Models.Itinerary>(newItinerary); TripItinerary trip = new TripItinerary(); trip.PassengerName = itineraryInfo.PassengerName; trip.Date = itineraryInfo.Date; trip.DepartureCity = itineraryInfo.Departure; trip.ArrivingCity = itineraryInfo.Arriving; //return the save result received from WCF Web Service TripService to the browser as a JSON string. return(Json(client.SaveTripItinerary(trip))); //replace null with the JSON string!! } else { return(null); } }
public static Route Format(Models.Itinerary itinerary, Models.Plan plan) { return(new Route() { ArrivalTime = itinerary.EndTime, DepatureTime = itinerary.StartTime, Duration = (itinerary.EndTime - itinerary.StartTime).TotalSeconds, EndLocation = plan.To.Coordinate, StartLocation = plan.From.Coordinate, Steps = itinerary.Legs.Where(v => v.TransitLeg).Select(Format).ToArray(), }); }
public ActionResult GetAllItinearies() { TripServiceClient client = new TripServiceClient(); TripItinerary[] trips = client.GetAllTripItineraries(); List <Itinerary> itineraries = new List <Itinerary>(new Itinerary[trips.Length]); for (int i = 0; i < trips.Length; i++) { itineraries[i] = new Models.Itinerary(); itineraries[i].Date = trips[i].Date; itineraries[i].Arriving = trips[i].ArrivingCity; itineraries[i].Departure = trips[i].DepartureCity; itineraries[i].PassengerName = trips[i].PassengerName; } return(Json(itineraries)); }