public RouteAttraction Delete(Route route, Attraction attraction) { using (var context = ApplicationDbContext.Get) { RouteAttraction routeAttraction = context.RouteAttractions.Find(route.RouteID, attraction.AttractionID); if (routeAttraction != null) { context.RouteAttractions.Remove(routeAttraction); context.SaveChanges(); } return(routeAttraction); } }
public RouteAttraction Add(Route route, Attraction attraction) { using (var context = ApplicationDbContext.Get) { RouteAttraction newtemp = new RouteAttraction() { RouteId = route.RouteID, Route = route, AtractionId = attraction.AttractionID, Attraction = attraction }; context.RouteAttractions.Add(newtemp); context.SaveChanges(); return(newtemp); } }
public IActionResult Remove(int id) { Route newRoute = _routeRepository.GetUserRoute(User.Identity.Name); List <Attraction> AllAtractions1 = _routeAttractionRepository.GetAttractions(newRoute); RouteAttraction route = new RouteAttraction() { RouteId = newRoute.RouteID, Route = newRoute, AtractionId = id, Attraction = _attractionRepository.GetAttraction(id), Index = id - 1 }; List <RouteAttraction> routeAttractions = newRoute.RouteAttractions; routeAttractions.Remove(route); //routeAttractions.RemoveAll(x => x.Attraction == _attractionRepository.GetAttraction(id)); newRoute.RouteAttractions = routeAttractions; _routeRepository.Update(newRoute); return(RedirectToAction("index")); }
public IActionResult Index(Route stuff) { Route newRoute = _routeRepository.GetUserRoute(User.Identity.Name); RouteAttraction route = new RouteAttraction() { RouteId = newRoute.RouteID, Route = newRoute, AtractionId = stuff.TempAtractionID, Attraction = _attractionRepository.GetAttraction(stuff.TempAtractionID), }; List <RouteAttraction> routeAttractions = new List <RouteAttraction>(); if (newRoute.RouteAttractions != null) { routeAttractions = newRoute.RouteAttractions; } route.Index = routeAttractions.Count; routeAttractions.Add(route); newRoute.RouteAttractions = routeAttractions; _routeRepository.Update(newRoute); return(RedirectToAction("index")); }
public override async Task <bool> Delete(int id) { if (id <= 0) { throw new InvalidOperationException(); } IReadOnlyCollection <AttractionSubject> toDelete = new AttractionSubject[0]; using (var cp = ContextProviderFactory.Create()) { toDelete = await cp.GetTable <AttractionSubject>() .Where(t => t.AttractionId == id) .ToArrayAsync(); } foreach (var attractionSubject in toDelete) { await _attractionSubjectsService.Delete(attractionSubject.AttractionId, attractionSubject.SubjectId); } IReadOnlyCollection <RouteAttraction> toDelete2 = new RouteAttraction[0]; using (var cp = ContextProviderFactory.Create()) { toDelete2 = await cp.GetTable <RouteAttraction>() .Where(t => t.AttractionId == id) .ToArrayAsync(); } foreach (var routeAttraction in toDelete2) { await _routeAttractionService.Delete(routeAttraction.AttractionId, routeAttraction.RouteId); } IReadOnlyCollection <AttractionPlaceType> toDelete3 = new AttractionPlaceType[0]; using (var cp = ContextProviderFactory.Create()) { toDelete3 = await cp.GetTable <AttractionPlaceType>() .Where(t => t.AttractionId == id) .ToArrayAsync(); } foreach (var attractionPlaceType in toDelete3) { await _attractionPlaceTypeService.Delete(attractionPlaceType.AttractionId, attractionPlaceType.PlaceTypeId); } await base.Delete(id); await _reviewService.DeleteByObject(PlaceTypesConfig.AttractionCode, id); return(true); }