예제 #1
0
        public async Task <IActionResult> Create(int?movieId, MovieDirectorCreateViewModel movieDirectorCreateViewModel)
        {
            if (movieId == null)
            {
                return(NotFound());
            }

            if (!ModelState.IsValid)
            {
                return(View(movieDirectorCreateViewModel));
            }

            var movieDirectorDetails = await _mediator.Send(new GetMovieDirectorDetailsQuery(movieId.Value, movieDirectorCreateViewModel.DirectorId));

            if (movieDirectorDetails != null)
            {
                ModelState.AddModelError("DirectorId", "Director is already present in Directors.So please select other director");
                return(View(movieDirectorCreateViewModel));
            }

            var movieDirector = _mapper.Map <MovieDirector>(movieDirectorCreateViewModel);
            var movie         = await _mediator.Send(new CreateMovieDirectorCommand(movieDirector));

            return(RedirectToAction(nameof(Index), new { movieId = movieId }));
        }
예제 #2
0
        public async Task <IActionResult> Create(int?movieId)
        {
            if (movieId == null)
            {
                return(NotFound());
            }
            var movieDetails = await _mediator.Send(new GetMovieByIdQuery(movieId.Value));

            var movieDirectorViewModel = new MovieDirectorCreateViewModel()
            {
                MovieId = movieId.Value, MovieTitle = movieDetails.Title, MovieImageUrl = movieDetails.Image.ImageUrl
            };

            return(View(movieDirectorViewModel));
        }
 public async Task <IActionResult> Create(MovieDirectorCreateViewModel model)
 {
     if (ModelState.IsValid)
     {
         var director = new Director()
         {
             MovieID     = model.MovieID,
             DateOfBirth = model.DateOfBirth,
             Name        = model.Name,
         };
         _context.Add(director);
         await _context.SaveChangesAsync();
     }
     ViewData["MovieID"] = new SelectList(_context.Movies, "ID", "Titel", model.MovieID);
     return(RedirectToAction(nameof(Index)));
 }