Ответов (5)5
Изучите шаблон post-redirect-get.
http://weblogs.asp.net/mhawley/archive/tags/MVC/default.aspx
http://devlicio.us/blogs/tim_barcz/archive/2008/08/22/prg-pattern-in-the-asp -net-mvc-framework.aspx
Используйте это вместе с надежной моделью предметной области (для отслеживания шагов или состояния завершения формы, или как вы это называете), и вы будете золотыми.
Чтобы сохранить шаги, вы можете реализовать фильтры действий потока страницы, которые обеспечивают такой опыт:
[RequiredStep(FlowStart = true)]
public ActionResult Confirm()
{
return View();
}
[RequiredStep (PreviousStep = "Confirm")]
public ActionResult ExecuteOrder()
{
return RedirectToAction("ThankYou");
}
[RequiredStep(PreviousStep = "ExecuteOrder")]
public ActionResult ThankYou()
{
return View();
}
Я оставил поток страниц до представления, которому, как я полагаю, он принадлежит, поэтому разные представления могут иметь разные потоки страниц (например, для клиентов настольных браузеров или клиентов мобильных телефонов и т. Д.). Я написал это в своем блоге: Мастер RESTful с использованием ASP .Net MVC… Возможно?