public async Task <IActionResult> Edit(DirectorEditViewModel directorEditViewModel) { if (!this.ModelState.IsValid) { return(this.View(directorEditViewModel)); } await this.directorsService.EditAsync(directorEditViewModel); return(this.RedirectToAction("GetAll", "Directors", new { area = "Administration" })); }
public async Task CheckIfEditingDirectorReturnsNullReferenceException() { this.SeedDatabase(); var directorEditViewModel = new DirectorEditViewModel { Id = 3, }; var exception = await Assert .ThrowsAsync <NullReferenceException>(async() => await this.directorsService.EditAsync(directorEditViewModel)); Assert.Equal(string.Format(ExceptionMessages.DirectorNotFound, directorEditViewModel.Id), exception.Message); }
public ActionResult DirectorEdit(DirectorEditViewModel viewModel) { if (ModelState.IsValid) { var directorDto = FilmViewerMapper.Mapper.Map <DirectorDetailsDto>(viewModel); _directorService.EditDirector(directorDto); TempData[UserMessages.UserMessage] = new MessageViewModel() { CssClass = "alert-success", Message = Resources.DirectorEditedSuccesfully }; } return(RedirectToAction("ViewDirectors", "Moderator")); }
public async Task CheckIfEditingDirectorWorksCorrectly() { this.SeedDatabase(); var directorEditViewModel = new DirectorEditViewModel { Id = this.firstDirector.Id, FirstName = "Changed Director first name", LastName = "Changed Director last name", }; await this.directorsService.EditAsync(directorEditViewModel); Assert.Equal(directorEditViewModel.FirstName, this.firstDirector.FirstName); Assert.Equal(directorEditViewModel.LastName, this.firstDirector.LastName); }
public async Task EditAsync(DirectorEditViewModel directorEditViewModel) { var director = this.directorsRepository.All().FirstOrDefault(d => d.Id == directorEditViewModel.Id); if (director == null) { throw new NullReferenceException( string.Format(ExceptionMessages.DirectorNotFound, directorEditViewModel.Id)); } director.FirstName = directorEditViewModel.FirstName; director.LastName = directorEditViewModel.LastName; director.ModifiedOn = DateTime.UtcNow; this.directorsRepository.Update(director); await this.directorsRepository.SaveChangesAsync(); }
// GET: Directors/Edit/5 #region Edit Get 1 eski hlai //public ActionResult Edit(int? id) // 1 //{ // if (id == null) // { // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); // } // Director director = db.Directors.Find(id); // if (director == null) // { // return HttpNotFound(); // } // var movies = db.Movies.Select(e => new SelectListItem() // { // Value = e.Id.ToString(), // Text = e.Name // }).ToList(); // var movieIds = director.MovieDirectors.Select(e => e.MovieId).ToList(); // ViewBag.Movies = new MultiSelectList(movies, "Value", "Text", movieIds); // return View(director); //} #endregion public ActionResult Edit(int?id) { if (!id.HasValue) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var movies = db.Movies.Select(e => new SelectListItem() { Value = e.Id.ToString(), Text = e.Name }).ToList(); var director = db.Directors.Find(id.Value); //List<int> _movieIds = db.MovieDirectors.Where(e => e.DirectorId == id.Value).Select(e => e.MovieId).ToList();// 1. yol List <int> _movieIds = director.MovieDirectors.Select(e => e.MovieId).ToList();// ALOO SORRR DirectorEditViewModel model = new DirectorEditViewModel(); model.Director = director; model.movieIds = _movieIds; model.Movies = new MultiSelectList(movies, "Value", "Text", model.movieIds);// return(View("EditNew", model)); }
//public ActionResult Edit([Bind(Include = "Id,Name,Surname,Retired")] Director director, List<int> movieIds) //1 //{ // var dbDirector = db.Directors.Find(director.Id); // dbDirector.Name = director.Name; // dbDirector.Surname = director.Surname; // dbDirector.Retired = director.Retired; // var dbMovieDirectors = db.MovieDirectors.Where(e => e.DirectorId == director.Id).ToList(); // foreach (var dbMovieDirector in dbMovieDirectors) // { // db.MovieDirectors.Remove(dbMovieDirector); // } // dbDirector.MovieDirectors = movieIds.Select(e => new MovieDirector() // { // MovieId = e, // DirectorId = director.Id // }).ToList(); // //if (ModelState.IsValid) // //{ // // db.Entry(director).State = EntityState.Modified; // // db.SaveChanges(); // // return RedirectToAction("Index"); // //} // DirectorValidator validator = new DirectorValidator(); // ValidationResult result = validator.Validate(director); // if (result.IsValid) // { // db.Entry(dbDirector).State = EntityState.Modified; // db.SaveChanges(); // return RedirectToAction("Index"); // } // return View(director); //} #endregion public ActionResult Edit(DirectorEditViewModel directorEditViewModel)//***** { if (ModelState.IsValid) { var director = db.Directors.Find(directorEditViewModel.Director.Id); director.Name = directorEditViewModel.Director.Name; director.Surname = directorEditViewModel.Director.Surname; director.Retired = directorEditViewModel.Director.Retired; var movieDirectors = db.MovieDirectors.Where(e => e.DirectorId == director.Id).ToList(); foreach (var movieDirector in movieDirectors) { db.MovieDirectors.Remove(movieDirector); } director.MovieDirectors = directorEditViewModel.movieIds.Select(e => new MovieDirector() { DirectorId = director.Id, MovieId = e }).ToList(); db.Entry(director).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(directorEditViewModel)); }