Вызывается два простых метода для создания нового пакета «Создать», и для него вызывается метод редактирования «Редактировать». Этот метод вызывает «GetPackDetail», который получает информацию, связанную с пакетом. Метод редактирования получает информацию о пакете и назначает его модели и открывает страницу «Изменить».Передача модели контроллеру с помощью ActionLink
На странице редактирования просмотра я пытаюсь передать целую модель методу «Создать» контроллера зоны. Он отлично работает, и я получаю всю информацию в этом методе, когда страница «Редактировать вид» открывается в режиме редактирования. Но я получаю null в поле «Имя», когда пользователь нажимает для создания нового пакета, вызывая метод «Создать» в контроллере пакетов, затем введите имя пакета, а затем нажмите на ссылку actionlink, чтобы передать эту модель контроллеру области. похоже, что изменения, внесенные в модель, не отражаются.
обновления Контроллер Отрывок
public ActionResult Create()
{
iSPYPack model = new iSPYPack();
return View("Edit", model);
}
public ActionResult Edit(int Id)
{
var model = GetPackDetail(Id);
return View("Edit", model);
}
Edit View
@model iSPYCMS.Models.iSPYPack
@using (Html.BeginForm())
{
@Html.LabelFor(x => x.Name)
@Html.TextBoxFor(x => x.Name)
}
@Html.ActionLink("Create Area","Create","Area", Model, new { @class="btn btn-success"})
iSPYPack Модель
public class iSPYPack
{
public int Id { get; set; }
[Required(ErrorMessage = "Pack Name is required")]
[Display(Name = "Pack Name")]
public string Name { get; set;
}
Area Контроллер
public ActionResult Create(iSPYPack Model)
{
var ispypackMode = Model;
iSPYArea model = new iSPYArea();
return View("Create", model);
}
'@ Html.ActionLink ("Создать область", "Создать", "Площадь", модель, новый {@ класс = "БТН БТН-успех"})' проходит первоначальную модель, а не то, что вы отредактировал. –
Как я могу передать отредактированную модель? –
Многие варианты. Используйте javascript для построения URL-адреса на основе текстового поля и используйте 'location.hef = url;' или у вас есть две кнопки отправки, каждая из которых имеет уникальный атрибут 'name', а затем в методе' Edit() 'post, проверьте значение и перенаправление на метод 'Create()' является подходящим. И вы должны быть 'Create (string name)', а не 'Create (iSPYPack Model)' –