public ActionResult Edit(ContestDetailModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } // 验证数据模型。 if (!ValidateContestDetailModel(model)) { return(View(model)); } // 执行用户身份验证。 ContestHandle handle = new ContestHandle(model.ContestId); using (ContestDataProvider data = ContestDataProvider.Create(handle, true)) { if (!UserSession.IsAuthorized(Session) || string.Compare(data.Creator, UserSession.GetUsername(Session), false) != 0) { return(Redirect("~/Error/AccessDenied")); } } model.SaveTo(handle); return(Redirect($"~/Contest/Show?id={model.ContestId}")); }
public ActionResult Add(ContestDetailModel model) { // 执行用户身份验证。 if (!UserSession.IsAuthorized(Session) || !UserAuthorization.CheckAccessRights(UserGroup.Insiders, UserSession.GetUserGroup(Session))) { return(Redirect("~/Error/AccessDenied")); } // 验证数据模型。 if (!ValidateContestDetailModel(model)) { return(View(model)); } // 创建比赛。 ContestHandle handle = ContestManager.Default.CreateContest(); model.SaveTo(handle); return(Redirect("~/Contest")); }