public static QuizQuestionAnswerVM SetSubData(QuizQuestionAnswer data, Guid aid) { var model = QuizQuestionAnswerVM.MToVM(data); model.Images = ImageLinkStorageVM.MsToVMs(ImageLinkStorageService.GetByOIDAPI(data.ID, aid)); return(model); }
private async Task SelectQuizQuestionAnswers(QuizQuestion quizQuestion) { if (quizQuestion.QuizQuestionAnswers == null) { quizQuestion.QuizQuestionAnswers = new List <QuizQuestionAnswer>(); } List <QuestionAnswer> questionAnswers = await _context.QuestionAnswers.Where(x => x.QuestionId == quizQuestion.QuestionId).OrderByDescending(x => x.IsCorrect).ThenBy(x => Guid.NewGuid()) .Take(AnswerOptions.Count).ToListAsync(); questionAnswers = questionAnswers.OrderBy(x => Guid.NewGuid()).ToList(); for (var answerIndex = 0; answerIndex < AnswerOptions.Count; answerIndex++) { QuizQuestionAnswerOption answerOption = AnswerOptions[answerIndex]; QuestionAnswer questionAnswer = questionAnswers[answerIndex]; QuizQuestionAnswer quizQuestionAnswer = new QuizQuestionAnswer { QuizQuestion = quizQuestion, Answer = questionAnswer, Option = answerOption }; if (questionAnswer.IsCorrect) { quizQuestion.CorrectAnswer = answerOption; } quizQuestion.QuizQuestionAnswers.Add(quizQuestionAnswer); } }
public static QuizQuestionAnswerVM SetSurveyFormat(QuizQuestionAnswer model, Guid qiid, int takerCount, Guid aid) { var temp = SetSubData(model, aid); var answered = QuizUserAnswerService.GetByQQIDQAID(model.QuizQuestionsID, model.ID).Count(); temp.Percent = takerCount > 0? (answered / takerCount) * 100:0; return(temp); }