public async Task <ActionResult> ActiveExamToCheck(int?id, string startTime) { var user = _db.Users.Find(User.Identity.GetUserId()); var myQuiz = await _db.Quizs.Include("QuestionsToCheckList").FirstOrDefaultAsync(d => d.Id == id); var myAnswers = await _db.AnswersToCheck.Where(d => d.Student.UserName == user.UserName && d.Quiz.Id == id).ToListAsync(); var myQuestions = myAnswers.Select(answer => answer.Question).ToList(); if (myQuiz.QuestionsToCheckList.Count > myAnswers.Count) { var notFound = true; var temp = 0; while (notFound) { var random = new Random(); temp = random.Next(myQuiz.QuestionsToCheckList.Count); if (myQuestions.All(d => d.Id != myQuiz.QuestionsToCheckList[temp].Id)) { notFound = false; } } var model = new AnsweredToCheckQuestion() { Description = myQuiz.QuestionsToCheckList[temp].Description, QuestionId = myQuiz.QuestionsToCheckList[temp].Id, QuizId = myQuiz.Id, UserName = user.UserName, QuizName = myQuiz.Name, Answer = "", StartTime = startTime, TimeLength = myQuiz.Length }; return(View(model)); } else { return(View()); } }
public async Task <ActionResult> ActiveExamToCheck(AnsweredToCheckQuestion model) { return(View()); }