public async Task <IActionResult> OnPostAsync() { User admin = await db.Users.FirstOrDefaultAsync(u => u.UserId.ToString() == User.Identity.Name); DateTime monday = dateService.GetMondayOfWeek(); DateTime saturday = dateService.GetSaturdayOfWeek(); Week = db.Days .Where(d => (d.Date.Date >= monday.Date) && (d.Date.Date <= saturday.Date)) .Where(d => d.ClassId == admin.ClassId) .Include(d => d.DayObjects); Day day = await Week.FirstOrDefaultAsync(d => d.DayNumber == NewDay.DayNumber); if (day == null) { day = new Day() { ClassId = admin.ClassId, Date = monday.AddDays(NewDay.DayNumber - 1), DayNumber = NewDay.DayNumber, }; SetObjectsOnDay(day); await db.Days.AddAsync(day); } else { ReplaceObjectsOnDay(day); } await db.SaveChangesAsync(); return(RedirectToPage("Admin")); }