Вы должны создать класс в своей папке Models, назовем его MyViewModel, и вы определите в этом классе все 6 свойств, которые необходимо отредактировать пользователю.В представлении create все поле ввода будет отображаться внутри элемента формы, определенного для отправки обратно вашему действию review .Важной частью вашего представления будет:
@model MyViewModel
@using (Html.BeginForm("Review", "MyController"))
{
//here there's your input field
@Html.TextBoxFor(m => m.prop1)
// and so on
}
В классе MyController вы будете иметь метод Review, определенный следующим образом:
public ActionResult Review(MyModel mm)
{
if (ModelState.IsValid)
{
return View(mm);
} else return RedirectToAction("Create");
}
И, наконец, в вашем представлении Review, у вас будет:
@model MyViewModel
//show up all the field to be reviewed
@Html.DisplayFor(m=>m.prop1)
//and so on
// now a form to pastback again all the data to the edit page
@using (Html.BeginForm("Edit", "MyController"))
{
//here there's your hidden field
@Html.HiddenFor(m => m.prop1)
// and so on
<input type="submit" value="Re-edit the fields"/>
}
Ваш класс контроллера MyController будет иметь следующий код:
public class ViaggioController : Controller
{
public ActionResult Create()
{
var emptyModel = new MyViewModel();
return RedirectToAction("Edit", new { mm = emptyModel });
}
public ActionResult Edit(MyViewModel mm)
{
return View(mm);
}
public ActionResult Review(MyViewModel mm)
{
if (ModelState.IsValid)
{
return View(mm);
}
else
return RedirectToAction("Create");
}
}