public ActionResult Delete(StatusEditViewModel model) { try { var statusCount = unitOfWork.Repository <Job>().FindBy(x => x.StatusId == model.Id).Count(); if (statusCount > 0) { ModelState.AddModelError("Status", "Cannot delete status. There are one or more Job records that contain this status."); } if (ModelState.IsValid == false) { return(View(model)); } var statusToDelete = unitOfWork.Repository <Status>().Get(x => x.Id == model.Id); unitOfWork.Repository <Status>().Delete(statusToDelete); unitOfWork.SaveChanges(); return(RedirectToAction(nameof(Index))); } catch { return(View(model)); } }
public ActionResult Create(StatusEditViewModel model) { try { if (ModelState.IsValid == false) { return(View(model)); } Status newStatus = new Status { Description = model.Status }; unitOfWork.Repository <Status>().Add(newStatus); unitOfWork.SaveChanges(); return(RedirectToAction("Details", new { Id = newStatus.Id })); } catch { return(View(model)); } }
public ActionResult Edit(int id, StatusEditViewModel model) { try { if (ModelState.IsValid == false) { return(View(model)); } var status = unitOfWork.Repository <Status>().Get(x => x.Id == model.Id); status.Description = model.Status; unitOfWork.Repository <Status>().Update(status); unitOfWork.SaveChanges(); return(RedirectToAction("Details", new { Id = status.Id })); } catch { return(View(model)); } }