public ActionResult Create(TrainerUserViewModel trainer)
        {
            var trainerinDb = (from te in _context.Roles where te.Name.Contains("Trainer") select te).FirstOrDefault();
            var trainerUser = _context.Users.Where(u => u.Roles.Select(us => us.RoleId).Contains(trainerinDb.Id)).ToList();

            if (ModelState.IsValid)
            {
                var checkTrainerExist = _context.TrainerUsers.Include(t => t.Trainer).Where(t => t.Trainer.Id == trainer.TrainerUser.TrainerID);
                if (checkTrainerExist.Count() > 0)                 //list ID comparison, if count == 0. jump to else
                {
                    ModelState.AddModelError("", "Trainer Already Exists.");
                }
                else
                {
                    _context.TrainerUsers.Add(trainer.TrainerUser);
                    _context.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            TrainerUserViewModel trainerUserView = new TrainerUserViewModel()
            {
                Trainers    = trainerUser,
                TrainerUser = trainer.TrainerUser
            };

            return(View(trainerUserView));
        }
        public ActionResult Create()
        {
            //Get Account Trainer
            var userInDb    = (from r in _context.Roles where r.Name.Contains("Trainer") select r).FirstOrDefault();
            var users       = _context.Users.Where(x => x.Roles.Select(y => y.RoleId).Contains(userInDb.Id)).ToList();
            var trainerUser = _context.TrainerUsers.ToList();

            var viewModel = new TrainerUserViewModel
            {
                Trainers    = users,
                TrainerUser = new TrainerUser()
            };

            return(View(viewModel));
        }