public MaturaResult VerificateMatura(List <QuestionClosedAnswerTestVm> questions, string userId) { var user = this.Context.Users.Entities.First(c => c.Id == userId); DateTime date = DateTime.Today; int correctAnswers = 0; foreach (var question in questions) { bool isCorrect = this.IsCorrectQuestionClsAns(question); this.AddQuestionToTakenQuestions(question, isCorrect, user, date); if (isCorrect) { correctAnswers++; } } double rating = this.CalculateRating(questions.Count, correctAnswers); var result = new MaturaResult() { DateOfTake = date, User = user, Rating = rating, }; this.Context.MaturaResults.Add(result); this.Context.SaveChanges(); return(result); }
public ActionResult Matura(MaturaVm matura) { var userId = this.User.Identity.GetUserId(); MaturaResult maturaResult = this.service.VerificateMatura(matura.Questions, userId); int id = maturaResult.Id; return(this.Redirect($"~/matura/result/{maturaResult.Id}")); }