我有一个我想要编辑的类别列表。我可以成功地将它们传递给控制器。
public ActionResult Edit()
{
if (!IsAdmin) return RedirectToAction("Index", "Home");
ViewBag.IsAdmin = IsAdmin;
var categories = _model.Categories.ToList();
return View(categories);
}
然后我想要编辑类别的名称。
@using MyStructures.Models
@model List<MyStructures.Models.Category>
@using (Html.BeginForm("Update", "Categories", FormMethod.Post))
{
foreach (var category in Model)
{
var categoryToEdit = @category;
<table>
<tr>
<td>Category Number: @category.Id</td>
<td>@Html.EditorFor(x => categoryToEdit.Name)</td>
<td colspan="2">
<input type="submit" value="Save"
formaction=@Href("~/Categories/Update/") />
</td>
</tr>
</table>
}
<input type="submit" value="Cancel"
formaction=@Href("~/Home/Index/") />
}
如何将更新后的值传递给&#34;更新&#34;控制器? Category obj
的值为null。
[HttpPost]
public ActionResult Update(Category obj)
{
var existing = _model.Categories.Find(obj.Id);
existing.Name = obj.Name;
_model.SaveChanges();
return RedirectToAction("Index", "Home");
}