Example #1
0
        // AdminEditMultiple
        public async Task <IActionResult> AdminEditMultiple(int?courseId, int?year)
        {
            IQueryable <Enrollment> enrollments = _context.Enrollment;
            List <Course>           courses     = await _context.Course.ToListAsync();

            if (courseId != null && year != null)
            {
                enrollments = enrollments.Where(e => e.CourseId == courseId);
                enrollments = enrollments.Where(e => e.Year == year);
                enrollments = enrollments.Include(e => e.Student);

                ViewData["Enrollments"] = new SelectList(enrollments.ToList().OrderBy(e => e.Student.FullName), "Id", "Student.FullName");
            }

            else
            {
                enrollments = null;
            }

            UnenrollMultipleViewModel ViewModel = new UnenrollMultipleViewModel
            {
                CourseId = courseId,
                Year     = year
            };

            ViewData["Courses"] = new SelectList(courses.OrderBy(c => c.Title), "Id", "Title");

            return(View(ViewModel));
        }
Example #2
0
        public async Task <IActionResult> AdminEditMultiple(UnenrollMultipleViewModel ViewModel)
        {
            if (ModelState.IsValid)
            {
                foreach (int Id in ViewModel.EnrollmentIds)
                {
                    Enrollment enrollment = await _context.Enrollment
                                            .FirstOrDefaultAsync(e => e.Id == Id);

                    if (enrollment != null)
                    {
                        enrollment.FinishDate = ViewModel.FinishDate;
                        _context.Update(enrollment);
                    }
                }

                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            return(RedirectToAction("AdminEditMultiple"));
        }