Beispiel #1
0
        public int CreateQuestion(QuestionBasic questionBasic)
        {
            Question question = new Question()
            {
                Text     = questionBasic.Text,
                IsActual = questionBasic.IsActual
            };

            unitOfWork.QuestionRepository.Insert(question);

            foreach (var answerBasic in questionBasic.Answers)
            {
                Answer answer = new Answer()
                {
                    Text      = answerBasic.Text,
                    IsCorrect = answerBasic.IsCorrect,
                    Question  = question
                };
                question.Answers.Add(answer);
                unitOfWork.AnswerRepository.Insert(answer);
            }

            unitOfWork.Save();

            return(question.Id);
        }
Beispiel #2
0
        public bool UpdateQuestion(QuestionBasic question)
        {
            Question questionToUpdate = unitOfWork.QuestionRepository.GetByID(question.Id);

            questionToUpdate.Text     = question.Text;
            questionToUpdate.IsActual = question.IsActual;
            unitOfWork.QuestionRepository.Update(questionToUpdate);

            foreach (var answer in question.Answers)
            {
                Answer answerToUpdate = unitOfWork.AnswerRepository.GetByID(answer.Id);
                answerToUpdate.Text      = answer.Text;
                answerToUpdate.IsCorrect = answer.IsCorrect;
                unitOfWork.AnswerRepository.Update(answerToUpdate);
            }

            unitOfWork.Save();

            return(true);
        }
Beispiel #3
0
        public JsonResult AddNewQuestion(QuestionBasic questionBasic)
        {
            int questionId = poolManager.CreateQuestion(questionBasic);

            return(Json(new { questionId }));
        }
Beispiel #4
0
 public JsonResult UpdateQuestion(QuestionBasic questionBasic)
 {
     poolManager.UpdateQuestion(questionBasic);
     return(Json("true"));
 }