public async Task <ActionResult> CreateNewMovie(MovieWithCategoryNameDto movie)
        {
            Category category = await _unitOfWork.Categories.GetCategoryByNameAsync(movie.CategoryName);

            if (category != null)
            {
                Movie newMovie = new Movie()
                {
                    Title      = movie.Title,
                    CategoryId = category.Id,
                    Category   = category,
                    Duration   = movie.Duration,
                    Year       = movie.Year
                };

                try
                {
                    await _unitOfWork.Movies.AddAsync(newMovie);

                    await _unitOfWork.SaveChangesAsync();

                    return(CreatedAtAction(nameof(GetMovieByIdAsync),
                                           new { id = newMovie.Id },
                                           newMovie));
                }
                catch (ValidationException ex)
                {
                    return(BadRequest(ex.Message));
                }
            }
            else
            {
                return(NotFound());
            }
        }
        public async Task <ActionResult> ModifyMovie(int id, MovieWithCategoryNameDto newMovie)
        {
            Movie movie = await _unitOfWork.Movies.GetByIdAsync(id);

            Category newCategory = await _unitOfWork.Categories.GetCategoryByNameAsync(newMovie.CategoryName);

            if (movie != null && newCategory != null)
            {
                movie.Title      = newMovie.Title;
                movie.Category   = newCategory;
                movie.CategoryId = newCategory.Id;
                movie.Year       = newMovie.Year;
                movie.Duration   = newMovie.Duration;

                try
                {
                    return(Ok(await _unitOfWork.SaveChangesAsync()));
                }
                catch (ValidationException ex)
                {
                    return(BadRequest(ex.Message));
                }
            }
            else
            {
                return(NotFound("Die Kategorie oder der Film wurde nicht gefunde"));
            }
        }