public ActionResult DeleteContestCategoryForLecturer( [DataSourceRequest] DataSourceRequest request, LecturerInContestCategoryShortViewModel model) { var lecturerInContestCategory = this.Data.LecturersInContestCategories .All() .FirstOrDefault(x => x.LecturerId == model.LecturerId && x.ContestCategoryId == model.ContestCategoryId); this.Data.LecturersInContestCategories.Delete(lecturerInContestCategory); this.Data.SaveChanges(); return(this.Json(this.ModelState.ToDataSourceResult(request))); }
public ActionResult AddContestCategoryToLecturer( [DataSourceRequest] DataSourceRequest request, string userId, LecturerInContestCategoryShortViewModel model) { model.LecturerId = userId; var isInContestCategory = this.Data.LecturersInContestCategories .All() .Any(x => x.LecturerId == model.LecturerId && x.ContestCategoryId == model.ContestCategoryId); if (isInContestCategory) { this.ModelState.AddModelError("LecturerId", "Потребителят вече е лектор в тази категория състезания."); } else { var lecturerInContestCategory = new LecturerInContestCategory { LecturerId = model.LecturerId, ContestCategoryId = model.ContestCategoryId }; this.Data.LecturersInContestCategories.Add(lecturerInContestCategory); this.Data.SaveChanges(); var contestCategoryName = this.Data.ContestCategories .All() .Where(x => x.Id == model.ContestCategoryId) .Select(x => x.Name) .FirstOrDefault(); model.ContestCategoryName = contestCategoryName; } return(this.Json(new[] { model }.ToDataSourceResult(request, this.ModelState))); }