public ActionResult Create(AddAuthorViewModel model) { try { if (ModelState.IsValid) { AddAuthor(model); return RedirectToAction("Index"); } } catch (DataException) { ModelState.AddModelError("", "Не удалось сохранить изменения. Повторите попытку."); } catch (Exception) { ModelState.AddModelError("", "Информация об авторе, которого вы хотите добавить, уже содержится в базе."); } return View(model); }
private void AddAuthor(AddAuthorViewModel model) { Author author = new Author(); author.Name = model.Name; if (model.Image != null) { author.Image = FileService.SaveFile(model.Image); } bool exist = unitOfWork.AuthorRepository.Get().FirstOrDefault( x => x.Name.ToUpper() == author.Name.ToUpper()) != null; if (exist) { throw new Exception(); } unitOfWork.AuthorRepository.Insert(author); unitOfWork.Save(); }