public async Task <IActionResult> Edit(string id, EditDirectorViewModel input) { if (!this.ModelState.IsValid) { return(this.View(input)); } var directorId = await this.directorsService.EditDirectorAsync(id, input.FullName); return(this.RedirectToAction(nameof(this.Details), new { id = directorId })); }
public async Task <IActionResult> Edit(int?id, [Bind("Id,Name,ImageId,ImageUrl,Photo,Description")] EditDirectorViewModel directorViewModel) { if (id == null || id != directorViewModel.Id) { return(NotFound()); } if (ModelState.IsValid) { if (directorViewModel.Photo != null) { FileUtil.DeleteFile(directorViewModel.ImageUrl); var newFilePath = FileUtil.SaveFileToPhysicalLocation(directorViewModel.Name, directorViewModel.Photo); directorViewModel.ImageUrl = Path.Combine("Images", newFilePath); } var director = _mapper.Map <Director>(directorViewModel); var updatedDirector = await _mediator.Send(new UpdateDirectorCommand(director)); return(RedirectToAction(nameof(Index))); } return(View(directorViewModel)); }