public ActorCreationData Add(ActorCreationData actorCreationData) { using (var entityContext = new MovieDbContext()) { Actor actorToDb = new Actor(); SimpleMapper.PropertyMap(actorCreationData, actorToDb); entityContext.ActorSet.Add(actorToDb); entityContext.SaveChanges(); if (actorCreationData.MovieIds != null) { foreach (var movieId in actorCreationData.MovieIds) { entityContext.MovieActorMappingSet.Add(new MovieActorMapping() { ActorId = actorToDb.Id, MovieId = movieId }); } } entityContext.SaveChanges(); } return(actorCreationData); }
public ActorCreationData UpdateSec(ActorCreationData actorCreationData) { using (var entityContext = new MovieDbContext()) { // peki existing null ise? var existingActor = (from x in entityContext.ActorSet where x.Id == actorCreationData.Id select x).FirstOrDefault(); SimpleMapper.PropertyMap(actorCreationData, existingActor); var currentMovieActorMappings = entityContext.MovieActorMappingSet.Where(t => t.ActorId == actorCreationData.Id).ToList(); if (actorCreationData.MovieIds == null) { actorCreationData.MovieIds = new int[] {} } ; if (currentMovieActorMappings.Count > actorCreationData.MovieIds.Count()) { for (int i = 0; i < actorCreationData.MovieIds.Count(); i++) { currentMovieActorMappings[i].MovieId = actorCreationData.MovieIds[i]; } //2 for (int i = actorCreationData.MovieIds.Count(); i < currentMovieActorMappings.Count; i++) { entityContext.MovieActorMappingSet.Remove(currentMovieActorMappings[i]); } entityContext.SaveChanges(); } else { int index = 0; foreach (var currentGenreMap in currentMovieActorMappings) { currentGenreMap.MovieId = actorCreationData.MovieIds[index]; index++; } if (actorCreationData.MovieIds.Count() != currentMovieActorMappings.Count) { for (int i = index; i < actorCreationData.MovieIds.Count(); i++) { var newMovieActorMapping = new MovieActorMapping() { ActorId = actorCreationData.Id, MovieId = actorCreationData.MovieIds[i] }; entityContext.MovieActorMappingSet.Add(newMovieActorMapping); } } entityContext.SaveChanges(); } } return(null); }
public ActionResult Edit(int?id) { if (id == null || id == 0) { return(View("Select")); } else { ActorCreationData actor = _actorService.GetSec((int)id); return(View(actor)); } }
public ActorCreationData GetSec(int actorId) { var actorCreationData = new ActorCreationData(); using (var entityContext = new MovieDbContext()) { var actor = entityContext.ActorSet.Find(actorId); SimpleMapper.PropertyMap(actor, actorCreationData); actorCreationData.MovieIds = entityContext.MovieActorMappingSet.Where(t => t.ActorId == actorId).Select(t => t.MovieId).ToArray(); } return(actorCreationData); }
public ActionResult Edit(ActorCreationData actorUpdated) { actorUpdated.Validate(); if (!actorUpdated.ValidationErrors.Any()) { _actorService.UpdateSec(actorUpdated); return(View(actorUpdated)); } else { ViewBag.ValidationErrors = actorUpdated.ValidationErrors.ToList(); TempData["Status"] = CrudNotification.ValidationError; return(View(actorUpdated)); } }
public ActionResult Create(ActorCreationData actor) { actor.Validate(); if (!actor.ValidationErrors.Any()) { RunAndReleaseProxy(_proxyFactory.CreateProxy <IActorService>(), proxy => proxy.Add(actor)); TempData["Status"] = CrudNotification.Success; TempData["Id"] = actor.Id; return(View()); } else { ViewBag.ValidationErrors = actor.ValidationErrors.ToList(); TempData["Status"] = CrudNotification.ValidationError; return(View()); } }
public ActorCreationData UpdateSec(ActorCreationData entity) { return(Channel.UpdateSec(entity)); }
public ActorCreationData Add(ActorCreationData entity) { return(Channel.Add(entity)); }
public ActorCreationData UpdateSec(ActorCreationData entity) { return(_actorRepository.UpdateSec(entity)); }
public ActorCreationData Add(ActorCreationData entity) { return(_actorRepository.Add(entity)); }