示例#1
0
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            base.OnActionExecuting(context);

            ContestYears = DbContext.Contests.Where(c => c.IsActive).ToDictionary(c => c.Id, c => c.Year);
            ChooseSelectedContestYear(context);

            // Default values for all controller actions
            ViewBag.ContestYears        = ContestYears;
            ViewBag.LatestContestYear   = ContestYears.Max(c => c.Value);
            ViewBag.SelectedContestYear = SelectedContestYear;
            ViewBag.SelectedContestName = SelectedContestName;
        }
示例#2
0
        public IActionResult SetYear(string year)
        {
            CookieOptions options = new CookieOptions
            {
                Expires = DateTime.Now.AddHours(6)
            };

            if (ContestYears.Any(c => c.Value.Equals(year)))
            {
                Response.Cookies.Append(Constants.COOKIE_SELECTED_YEAR_KEY, year, options);
                return(Ok());
            }

            return(NotFound());
        }