public ActionResult Results(int id) { UserSummaryViewModel model = db.Users.Where(u => u.ID == id) .Select(u => new UserSummaryViewModel { Name = u.Name, Email = u.Email }).SingleOrDefault <UserSummaryViewModel>(); UserQuiz userQuiz = db.UserQuizs.Where(uq => uq.UserID == id).SingleOrDefault <UserQuiz>(); List <UserQuizAnswer> userQuizAnswers = db.UserQuizAnswers.Where(ua => ua.UserQuizID == userQuiz.ID) .ToList <UserQuizAnswer>(); model.QuestionsAndAnswers = new List <QuestionsAndAnswersViewModel>(); foreach (var item in userQuizAnswers) { QuestionsAndAnswersViewModel data = new QuestionsAndAnswersViewModel(); QuizAnswer answer = db.QuizAnswers.Where(a => a.ID == item.QuizAnswerID).SingleOrDefault <QuizAnswer>(); QuizQuestion quizQuestion = db.QuizQuestions.Where(q => q.ID == answer.QuestionID).SingleOrDefault <QuizQuestion>(); QuizAnswer correctAnswer = db.QuizAnswers.Where(a => a.QuestionID == quizQuestion.ID && a.CorrectAnswer == true).SingleOrDefault <QuizAnswer>(); if (correctAnswer.AnswerType == "TX") { if (correctAnswer.Answer.ToLower() == item.UserQuizText.ToLower()) { data.Correct = true; } else { data.Correct = false; } } else { if (answer.ID == correctAnswer.ID) { data.Correct = true; } else { data.Correct = false; } } data.CorrectAnswer = correctAnswer.Answer; data.Question = quizQuestion.Question; if (answer.AnswerType == "TX") { data.UserAnswer = item.UserQuizText; } else { data.UserAnswer = answer.Answer; } data.WhyCorrect = correctAnswer.WhyCorrectAnswer; model.QuestionsAndAnswers.Add(data); } model.NumberOfCorrect = model.QuestionsAndAnswers.Where(m => m.Correct == true).Count(); model.NumberOfQuestions = model.QuestionsAndAnswers.Count(); return(View(model)); }
public ActionResult <Quiz> SubmitQuiz(UserQuiz quiz) { }
public UserQuiz Create(UserQuiz userQuiz) { dBContext.UserQuizzes.Add(userQuiz); dBContext.SaveChanges(); return(userQuiz); }