public IActionResult Prompt(int currentIndex = 0) { var questionnaire = GetQuestionnaire(); var questionnaireOutcome = _questionnaireService.Iterate(questionnaire); SaveQuestionnaire(questionnaire); if (questionnaireOutcome.IsComplete || questionnaireOutcome.FurtherQuestions == null) { SaveQuestionnaire(questionnaire); return(RedirectToAction("Result")); } var questions = questionnaireOutcome.FurtherQuestions.ToList(); SaveQuestions(questions); var promptViewModel = new QuestionViewModel(questions, currentIndex); return(View("Prompt", promptViewModel)); }