public void Execute(MovieDto request)
        {
            var movie = _context.Movies.Include(x => x.MovieDirectors).Where(x => x.Id == request.Id).FirstOrDefault();//Find(request.Id);

            if (movie == null)
            {
                throw new EntityNotFoundException(request.Id, typeof(Movie));
            }

            _validator.ValidateAndThrow(request);

            _mapper.Map(request, movie);

            var mds = movie.MovieDirectors;

            _context.MovieDirector.RemoveRange(mds);  // brisem stare konekcije zbog dupliranja

            ICollection <MovieDirector> MovieDirectors = new HashSet <MovieDirector>();

            foreach (var md in request.Directors)
            {
                MovieDirectors.Add(new MovieDirector
                {
                    DirectorID = md,
                    Movie      = movie
                });
            }

            movie.MovieDirectors = MovieDirectors;

            _context.SaveChanges();
        }
예제 #2
0
        public void Execute(MovieDto request)
        {
            var movie = mapper.Map <Movie>(request);

            validator.ValidateAndThrow(request);

            context.Movies.Add(movie);
            context.SaveChanges();
        }
예제 #3
0
        public void Execute(MovieDto dto)
        {
            var movieFromDb = context.Movies.Find(dto.Id);

            mapper.Map(dto, movieFromDb);

            validator.ValidateAndThrow(dto);

            context.SaveChanges();
        }