public async Task <IActionResult> OnGet() { if (ClassId == Guid.Empty) { TempData["Warning"] = "No class was selected"; return(RedirectToPage("/Admin/Classes")); } var classResponse = await dataService.ClassAsync(ClassId); if (classResponse == null) { TempData["Failed"] = "The class selected does not exist"; return(RedirectToPage("/Admin/Classes")); } ViewModel = new ClassDetailsViewModel { Class = classResponse, Children = new List <Child>(), BelongingSubjects = new List <Subject>(), NonBelongingSubjects = new List <Subject>(), }; if (classResponse.Students.Count > 0) { foreach (var student in classResponse.Students) { ViewModel.Children.Add(student.Child); } } if (classResponse.Subjects.Count > 0) { foreach (var subject in classResponse.Subjects) { ViewModel.BelongingSubjects.Add(subject.Subject); } } if (await _context.Subjects.AnyAsync()) { var allSubjects = await _context.Subjects.ToListAsync(); allSubjects.ForEach(subject => { if (!ViewModel.BelongingSubjects.Contains(subject)) { ViewModel.NonBelongingSubjects.Add(subject); } }); } ViewData["Title"] = $"{ViewModel.Class.Name} Details"; return(Page()); }