public ActionResult Update(DesignationViewModel designationVm) { ApiResult <Designation> apiResult; if (ModelState.IsValid) { if (designationVm.Id > 0) { apiResult = TryExecute(() => { var designation = new Designation { Title = designationVm.Title, DepartmentId = designationVm.DepartmentId, Band = designationVm.Band, Description = designationVm.Description, MailAlias = designationVm.MailAlias, Id = designationVm.Id }; _designationRepository.Update(designation); _unitOfWork.Commit(); return(designation); }, "Designation updated sucessfully"); } else { apiResult = TryExecute(() => { var designation = new Designation { Title = designationVm.Title, DepartmentId = designationVm.DepartmentId, Band = designationVm.Band, Description = designationVm.Description, MailAlias = designationVm.MailAlias, Id = designationVm.Id }; _designationRepository.Create(designation); _unitOfWork.Commit(); return(designation); }, "Designation created sucessfully"); } } else { apiResult = ApiResultFromModelErrors <Designation>(); } return(Json(apiResult, JsonRequestBehavior.AllowGet)); }