示例#1
0
        public bool SaveQuestionAndAnswers(SaveQuestionAndAnswersRequestModel requestModel)
        {
            IEnumerable <Question> questionTable = new List <Question>
            {
                new Question
                {
                    intCategoryId = requestModel.Question.CategoryId,
                    intQuestionId = requestModel.Question.QuestionId,
                    strName       = requestModel.Question.Question
                }
            };

            var success = _databaseController.InsertUpdate(questionTable);

            if (!success)
            {
                return(false);
            }

            if (requestModel.Question.QuestionId == 0)
            {
                requestModel.Question.QuestionId = _databaseController
                                                   .GetAllQuestions()
                                                   .OrderByDescending(a => a.intQuestionId)
                                                   .First()
                                                   .intQuestionId;
            }

            var answerTable = requestModel
                              .Answers
                              .Select(a => new Answer
            {
                blnCorrect    = a.Correct,
                intAnswerID   = a.AnswerId,
                intQuestionID = requestModel.Question.QuestionId,
                strName       = a.Answer
            });

            success = _databaseController.InsertUpdate(answerTable);
            return(success);
        }
示例#2
0
        public IActionResult SaveQuestion(EditQuestionAndAnswerViewModel viewModel)
        {
            if (viewModel.Answers.Any(a => string.IsNullOrEmpty(a.Answer)) || string.IsNullOrEmpty(viewModel.Name))
            {
                viewModel.ErrorMessage = "Alle Textboxen müssen ausgefüllt werden.";
                return(View("QuestionDetail", viewModel));
            }
            viewModel.Answers[viewModel.CorrectAnswerIndex].Correct = true;
            var requestModel = new SaveQuestionAndAnswersRequestModel
            {
                Answers  = viewModel.Answers,
                Question = new QuestionModel
                {
                    Question   = viewModel.Name,
                    QuestionId = viewModel.Id,
                    CategoryId = viewModel.SelectedCategoryId
                }
            };
            var content = JsonConvert.SerializeObject(requestModel);
            var success = _webserviceProvider.PostDataFromWebService <bool>(Controllers.Edit.ToString(), "SaveQuestionWithAnswer", content);

            return(RedirectToAction("EditQuestions"));
        }
 public bool SaveQuestionAndAnswers(SaveQuestionAndAnswersRequestModel requestModel)
 {
     return(_editHandler.SaveQuestionAndAnswers(requestModel));
 }