public async Task <IActionResult> Edit(BookPostModel model) { if (ModelState.IsValid) { try { var book = Mapper.Map <Book>(model); var _id = 0; if (book.Id == 0) { var _book = await BookService.CreateAsync(book); _id = _book.Id; } else { await BookService.UpdateAsync(book); _id = book.Id; } // save image if (model.Image != null || model.Remove) { if (model.Remove) { await BookService.SetImageAsync(_id, null); } else { await BookService.SetImageAsync(_id, model.Image.OpenReadStream()); } } return(RedirectToAction("view", "book", new { id = _id, slug = $"Nr. {book.Number} {book.Title}".ToSlug() })); } catch (Exception ex) { ModelState.AddModelError("error", ex.Message); } } var view = new BookEditContainer { Book = model }; return(View("Edit", view)); }
public IActionResult Create() { var _book = new Book(); var book = Mapper.Map <BookPostModel>(_book); book.Number = null; var view = new BookEditContainer { Book = book }; return(View("Edit", view)); }
public async Task <IActionResult> Edit(int id) { var _book = await BookService.GetByIdAsync(id); if (_book == null) { return(NotFound()); } var book = Mapper.Map <BookPostModel>(_book); var view = new BookEditContainer { Book = book }; return(View("Edit", view)); }