将您的客户添加到视图中的 foreach lop 中,并将每个客户的主键传递给控制器的编辑和删除方法,如下所示:
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.s1)
</td>
<td>
@Html.DisplayFor(modelItem => item.s2)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id=item.id }) |
@Html.ActionLink("Delete", "Delete", new { id=item.id })
</td>
</tr>
}
然后在您的控制器中创建一个 GET 方法以从视图中接受主键作为参数,如下所示:
public ActionResult Edit(int id)
{
Class1 class1 = db.Class1.Find(id);
return View(class1);
}
然后在您的编辑视图中创建一个表单以将值返回为:
@using (Html.BeginForm())
{
<div class="form-horizontal">
<h4>Class1</h4>
<hr />
@Html.HiddenFor(model => model.id)
<div class="form-group">
@Html.LabelFor(model => model.s1, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.s1, new { htmlAttributes = new { @class = "form-control" } })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.s2, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.s2, new { htmlAttributes = new { @class = "form-control" } })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Save" class="btn btn-default" />
</div>
</div>
</div>
}
然后在您的控制器中创建一个 POST 方法以从视图中接受模型作为参数,如下所示:
[HttpPost]
public ActionResult Edit([Bind(Include = "id,s1,s2")] Class1 class1)
{
db.Entry(class1).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
同样为 Delete 创建 GET 和 POST 方法。