public async Task <ActionResult> Create(QuestionChoicesViewModel collection) { try { for (var i = 0; i < 4; i++) { var choice = new Choice { QuestionId = collection.QuestionId, Correct = (collection.Choices[i].Correct), ChoiceString = collection.Choices[i].ChoiceString }; HttpResponseMessage response = await _httpClient.PostAsync( _choiceUrl, choice, new JsonMediaTypeFormatter()); if (!response.IsSuccessStatusCode) { ModelState.TryAddModelError("", "Invalid data"); return(View(collection)); } } return(RedirectToAction(nameof(Index), "Question")); } catch { return(View(collection)); } }
// GET: QuestionChoices/Create public ActionResult Create(int lastQuesId) { var model = new QuestionChoicesViewModel { QuestionId = lastQuesId }; return(View(model)); }
// GET: QuestionChoices public async Task <ActionResult> Index(int questionId) { var model = new QuestionChoicesViewModel { QuestionId = questionId }; HttpResponseMessage response = await _httpClient.GetAsync(_questionChoicesUrl + questionId); if (!response.IsSuccessStatusCode) { return(View("Error", new ErrorViewModel())); } IEnumerable <Choice> choices = await response.Content.ReadAsAsync <IEnumerable <Choice> >(); IEnumerable <ChoiceViewModel> choiceModels = choices.Select(Mapper.Map); model.Choices = choiceModels.ToList(); return(View(model)); }