public IActionResult QuestionDetail() { var viewModel = new EditQuestionAndAnswerViewModel { Answers = new List <AnswerModel> { new AnswerModel(), new AnswerModel(), new AnswerModel(), new AnswerModel() }, Categories = _webserviceProvider.GetDataFromWebService <IEnumerable <CategoryModel> >(Controllers.Edit.ToString(), "AllCategories").ToList() }; return(View(viewModel)); }
public IActionResult QuestionDetail(int questionId) { var categories = _webserviceProvider.GetDataFromWebService <IEnumerable <CategoryModel> >(Controllers.Edit.ToString(), "AllCategories"); var content = JsonConvert.SerializeObject(questionId); var question = _webserviceProvider.PostDataFromWebService <QuestionModel>(Controllers.Edit.ToString(), "QuestionById", content); var answers = _webserviceProvider.PostDataFromWebService <IEnumerable <AnswerModel> >(Controllers.Edit.ToString(), "AnswersOfQuestion", content); var viewModel = new EditQuestionAndAnswerViewModel { Answers = answers.ToList(), Categories = categories.ToList(), Name = question.Question, Id = questionId, SelectedCategoryId = question.CategoryId }; return(View(viewModel)); }
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")); }