У меня есть простой пост-действие, которое пытается вернуть новую модель обратно в представление из метода post. Почему-то, когда я возвращаю новую модель, я всегда вижу модель, которую я опубликовал, и почему это происходит? Мне нужно изменить значения модели в post post и вернуть их пользователю, но по какой-то причине я не могу это сделать?ASP.NET MVC Post Возвращает неправильные значения модели
public ActionResult Build()
{
return View(new Person());
}
[HttpPost]
public ActionResult Build(Person model)
{
return View(new Person() { FirstName = "THX", LastName = "1138" });
}
Это код вида;
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<legend>Person</legend>
<div class="editor-label">
@Html.LabelFor(model => model.FirstName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.FirstName)
@Html.ValidationMessageFor(model => model.FirstName)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.LastName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.LastName)
@Html.ValidationMessageFor(model => model.LastName)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
Если я открываю форму и введите «Джон» для имени и «Смит» для фамилии и опубликовать форму, я получаю «Джон», «Смит» назад от почтового действия, а не «THX 1138 "есть ли способ переопределить это поведение? Я также хотел бы знать, почему это так?
где находится код, указывающий на кнопку для вызова 'действия Build' представить? – jbabey
Можете ли вы показать сгенерированный HTML? –
Вы поставили точку останова в «public ActionResult Build (Person model)», чтобы убедиться, что это метод действия, к которому привязаны? – Rob