public async Task <ActionResult> Create(QuizzCreateUpdateVM vm)
        {
            if (ModelState.IsValid)
            {
                vm.Quizz.Candidat = new CandidatVM {
                    Id = vm.SelectedCandidatId
                };
                vm.Quizz.Modules = vm.SelectedModulesLibs.Select(l => new ModuleVM {
                    ModuleId = l
                }).ToList();
                vm.Quizz.Questions = new List <QuestionVM>();
                foreach (var module in vm.Quizz.Modules)
                {
                    var test = (await questionService.GetAll()).Where(q => q.Module.ModuleId == 2);
                    vm.Quizz.Questions.AddRange((await questionService.GetAll()).Where(q => q.Module.ModuleId == module.ModuleId));
                }

                vm.Quizz.NbQuestion = vm.Quizz.Questions.Count();

                await quizzService.Create(vm.Quizz);

                return(RedirectToAction("Index"));
            }

            return(View(vm));
        }
        // GET: Pizzas/Create
        public async Task <ActionResult> Create()
        {
            var module = (await moduleService.GetAll());

            for (int i = 0; i < module.Count; i++)
            {
                module[i].ModuleId = i + 1;
            }

            var candidats = new SelectList(await candidatService.GetAll(), "Id", "Nom");
            var modules   = new SelectList(await moduleService.GetAll(), "ModuleId", "ModuleLib");
            var questions = new SelectList(await questionService.GetAll(), "QuestionId", "QuestionLib");

            //var questions = new SelectList(await questionService.GetAll(), "Param1", "Param2", "...");

            var vm = new QuizzCreateUpdateVM
            {
                AvailableCandidats = candidats,
                AvailableModules   = modules,
                AvailableQuestions = questions
            };

            return(View(vm));
        }