public ActionConfirmation Delete(int id) { Request requestToDelete = _requestRepository.Get(id); if (requestToDelete != null) { _requestEstimateManagementService.DeleteByRequest(id); _requestRepository.Delete(requestToDelete); try { _requestRepository.DbContext.CommitChanges(); return(ActionConfirmation.CreateSuccessConfirmation( "The request was successfully deleted.")); } catch { _requestRepository.DbContext.RollbackTransaction(); return(ActionConfirmation.CreateFailureConfirmation( "A problem was encountered preventing the request from being deleted. " + "Another item likely depends on this request.")); } } else { return(ActionConfirmation.CreateFailureConfirmation( "The request could not be found for deletion. It may already have been deleted.")); } }