I try to call method that returns View
inside of another method, but in the same controller. There is my code:
public ActionResult GetAnswer(List<PossibleAnswerVM> possibleAnswers)
{
if (IsLastQuestion(possibleAnswers.FirstOrDefault().IdQuestion))
{
return Index();
}
return null;
}
[HttpGet]
public ActionResult Index()
{
IEnumerable<Anketa> anketas = Manager.SelectAnketa();
return View(anketas);
}
And there is the form which call GetAnswer()
@using (Ajax.BeginForm("GetAnswer", "Survey", FormMethod.Post,
new AjaxOptions { InsertionMode = InsertionMode.Replace }))
{
<input type="submit" value="Ответить"
onclick="answerClick(@Model.FirstOrDefault().OrdQuestion);"
class="btn btn-default" />
}
Also I have tried RedirectToAction()
and call methods from another controller.
I would appreciate any help.
Try this.
public ActionResult GetAnswer(List<PossibleAnswerVM> possibleAnswers)
{
if (IsLastQuestion(possibleAnswers.FirstOrDefault().IdQuestion))
{
IEnumerable<Anketa> anketas = Manager.SelectAnketa();
return View("VIEWNAME", anketas);
}
return null;
}
private static bool IsLastQuestion(int idQuestion)
{
var returnValue = false;
Question question = Manager.GetQuestion(idQuestion);
List<Question> questions = Manager.SelectQuestions(question.idAnketa);
if (questions.Count == Manager.GetCountQuestionsAnswered(question.idAnketa, SessionUser.PersonID))
{
returnValue = true;
}
return returnValue;
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.