public ActionResult AssignCourseToTrainee(int id)
        {
            var traineecourses = new AssignTraineeViewModel()
            {
                CourseId = id,
                Course   = _context.Courses.SingleOrDefault(t => t.Id == id),
                Trainees = _context.Users.OfType <Trainee>().ToList(),
            };

            return(View(traineecourses));
        }
        public ActionResult AssignCourseToTrainee(int CourseId, AssignTraineeViewModel model)
        {
            var assignCourse = new TraineeCourses();

            assignCourse.CourseId  = model.CourseId;
            assignCourse.TraineeId = model.TraineeId;
            if (!_context.TraineeCourses
                .Where(t => t.CourseId == model.CourseId)
                .Select(t => t.TraineeId)
                .Contains(model.TraineeId))
            {
                _context.TraineeCourses.AddOrUpdate(assignCourse);
                _context.SaveChanges();
                ViewBag.Message = "Assign successfully";
            }
            else
            {
                ModelState.AddModelError("Validation", "This trainee has been assigned already");
            }

            return(RedirectToAction("DetailCourse", "Staff", new { @id = CourseId }));
        }