public StopEntityView GetStopEntityView(int id) { var stop = _context.Stops .Where(x => x.StopId == id) .Join(_context.Cities, a => a.CityId, b => b.CityId, (a, b) => new { StopId = a.StopId, StopName = a.Name, Duration = a.Duration, ArrivalTime = a.ArrivalTime, DepartureTime = a.DepartureTime, CityName = b.CityName }); StopEntityView stopView = stop.Select( x => new StopEntityView { StopId = x.StopId, Name = x.StopName, ArrivalTime = x.ArrivalTime, DepartureTime = x.DepartureTime, Duration = x.Duration, City = x.CityName }).SingleOrDefault(); if (stopView != null) { List <RouteEntity> routes = GetListOfRoutes(stopView.StopId); stopView.Routes = routes; } return(stopView); }
public static StopView ToDomainView(this StopEntityView stop) { if (stop != null) { StopView stopView = new StopView { StopId = stop.StopId, City = stop.City, Name = stop.Name, Duration = stop.Duration, ArrivalTime = stop.ArrivalTime, DepartureTime = stop.DepartureTime }; List <Route> routes = new List <Route>(); for (int i = 0; i < stop.Routes.Count; i++) { Route routeView = stop.Routes[i].ToDomain(); routes.Add(routeView); } stopView.Routes = routes; return(stopView); } else { return(null); } }