public static RouteView ToDomainView(this RouteEntityView route) { if (route != null) { var routeView = new RouteView { RouteId = route.RouteId, Number = route.Number, Name = route.Name, TrainNumber = route.TrainNumber, DepartureStation = route.DepartureStation, ArrivalStation = route.ArrivalStation, ArrivalTime = route.ArrivalTime, DepartureTime = route.DepartureTime }; List <Stop> stops = new List <Stop>(); for (int i = 0; i < route.ListOfStops.Count; i++) { Stop stopView = route.ListOfStops[i].ToDomain(); stops.Add(stopView); } routeView.ListOfStops = stops; return(routeView); } else { return(null); } }
public RouteEntityView GetRouteEntityView(int id) { var route = _context.Routes .Where(x => x.RouteId == id) .Join(_context.Trains, a => a.TrainId, b => b.TrainId, (a, b) => new { RouteId = a.RouteId, RouteName = a.Name, RouteNumber = a.Number, ArrivalTime = a.ArrivalTime, DepartureTime = a.DepartureTime, ArrivalStation = a.ArrivalStation, DepartureStation = a.DepartureStation, TrainNumber = b.TrainNumber }); RouteEntityView routeView = route.Select( x => new RouteEntityView { RouteId = x.RouteId, Name = x.RouteName, Number = x.RouteNumber, ArrivalStation = x.ArrivalStation, DepartureStation = x.DepartureStation, ArrivalTime = x.ArrivalTime, DepartureTime = x.DepartureTime, TrainNumber = x.TrainNumber }).SingleOrDefault(); if (routeView != null) { List <StopEntity> stops = GetListOfStops(routeView.RouteId); routeView.ListOfStops = stops; } return(routeView); }