// GET: SchoolClasses/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(RedirectToAction("Index")); } var schoolClass = await _context.SchoolClasses.FindAsync(id); if (schoolClass == null) { return(RedirectToAction("Index")); } var enrolledStudentIds = _context.SchoolClassStudents .Where(scs => scs.SchoolClassId == schoolClass.Id) .Select(scs => scs.StudentId).ToList(); var enrolledStudents = await GetUsersFromIdAsync(enrolledStudentIds); var viewModel = new SchoolClassViewModel { Id = schoolClass.Id, Name = schoolClass.Name, Teacher = await _userManager.FindByIdAsync(schoolClass.TeacherId), TeacherId = schoolClass.TeacherId, Students = enrolledStudents, StudentIds = enrolledStudentIds }; await SchoolClassViewModel.UpdateUserList(_userManager); return(View(viewModel)); }
// GET: SchoolClasses public async Task <IActionResult> Index() { var schoolClasses = await _context.SchoolClasses.ToListAsync(); var schoolClassStudents = await _context.SchoolClassStudents.ToListAsync(); var viewModels = new List <SchoolClassViewModel>(); foreach (var sc in schoolClasses) { var studentIds = schoolClassStudents .Where(scs => scs.SchoolClassId == sc.Id) .Select(scs => scs.StudentId).ToList(); viewModels.Add(new SchoolClassViewModel { Id = sc.Id, Name = sc.Name, Teacher = await _userManager.FindByIdAsync(sc.TeacherId), Students = await GetUsersFromIdAsync(studentIds) }); } await SchoolClassViewModel.UpdateUserList(_userManager); return(View(viewModels)); }
// GET: SchoolClasses/Create public async Task <IActionResult> Create() { await SchoolClassViewModel.UpdateUserList(_userManager); return(View()); }