コード例 #1
0
        public async Task <IActionResult> Enroll(string name)
        {
            var contests = await this.contestService.GetAllAsync();

            ViewData["Contests"] = new SelectList(contests.Where(c => c.OpenOrInvitational == "Open"), "Name", "Name");
            var contest = await this.contestService.FindContestByNameAsync(name);

            var enrolView = new ContetsViewModel(new ContestDTO(contest));

            enrolView.Name = name;
            return(View(enrolView));
        }
コード例 #2
0
        public async Task <IActionResult> GetByPhaseFiltered(ContetsViewModel contetsViewModel)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var phase    = contetsViewModel.Filter;
                    var sortBy   = contetsViewModel.SortBy;
                    var orderBy  = contetsViewModel.OrderBy;
                    var contests = await this.contestService.GetByPhaseAsync(phase, sortBy, orderBy);

                    return(View(contests.Select(c => new ContetsViewModel(c))));
                }
                catch (Exception e)
                {
                    toastNotification.AddErrorToastMessage(e.Message, new NotyOptions());
                    var path = Request.Path.Value.ToString();
                    return(Redirect(path));
                }
            }
            return(RedirectToAction("Index"));
        }