public async Task <IActionResult> Create(CreateContestViewModel createViewModel) { var newContestDTO = new NewContestDTO() { Name = createViewModel.Name, CategoryName = createViewModel.CategoryName, IsOpen = createViewModel.IsOpen, Phase1 = createViewModel.Phase1, Phase2 = createViewModel.Phase2, Finished = createViewModel.Finished }; if (ModelState.IsValid) { try { await this.contestService.CreateAsync(newContestDTO); return(RedirectToAction(nameof(Index))); } catch (Exception e) { toastNotification.AddErrorToastMessage(e.Message, new NotyOptions()); return(Redirect(Request.Path.Value.ToString())); } } var categories = await this.categoryService.GetAllBaseAsync(); ViewData["Categories"] = new SelectList(categories, "Name", "Name"); return(View()); }
public CreateContestViewModel GetCreateContest() { var viewModel = new CreateContestViewModel { RewardStrategies = this.Data.RewardStrategies.All() .Select(r => new StrategyViewModel() { Id = r.Id, Description = r.Description, Name = r.Name, }) .ToList(), ParticipationStrategies = this.Data.ParticipationStrategies.All() .Select(p => new StrategyViewModel() { Id = p.Id, Description = p.Description, Name = p.Name, }) .ToList(), VotingStrategies = this.Data.VotingStrategies.All() .Select(v => new StrategyViewModel() { Id = v.Id, Description = v.Description, Name = v.Name, }) .ToList(), DeadlineStrategies = this.Data.DeadlineStrategies.All() .Select(dl => new StrategyViewModel() { Id = dl.Id, Description = dl.Description, Name = dl.Name, }) .ToList() }; return(viewModel); }