Я хочу сделать что-то вроде анкеты с разными разделами.Поэтому я создал Index.cshtml, который включает в себя соответствующее частичное представление (в зависимости от числа, которое имеет мое step-integer).Что-то вроде
@using (Html.BeginForm())
{
@Html.Partial("Step" + Model.Step, Model)
<p>
@if (Model.Step > 1)
{
<button name="button" value="Zurück" />
}
<input type="submit" value="Weiter" />
</p>
}
Как вы, возможно, уже заметили, он будет искать что-то вроде «Step1.cshtml» и т. Д., Где расположена соответствующая маска ввода, например
@model CVGen.Models.InputModel
<div class="editor-field">
@Html.TextBoxFor(model => model.Anrede)
@Html.ValidationMessageFor(model => model.Anrede)
</div>
Моя модель содержит свойства всей анкеты, поэтому, конечно, я хочу каждый раз передавать всю модель на следующий шаг / просмотр (и если я вернусь, модель также должна быть возвращена, чтобы информация оставалась там).и пользователь может редактировать его).Но это просто не сработает для меня.Мой контроллер выглядит примерно так:
public ActionResult Index()
{
InputModel model = new InputModel();
return View(model);
}
[HttpPost]
public ActionResult Index(InputModel model)
{
model.Step++;
return View(model);
}
Также мое свойство model.Step всегда равно 0 (или 1, после того, как 1 добавлено в HttpPost), что, конечно, потому что моя модель не будет переданаво второй раз.
Есть предложения?