我有一个基本的创建/编辑/删除/索引格式,由 MVC 和我的班级(ClassA)创建。该类包含一个对象列表(ClassB)。
当我调用视图来编辑对象时,我可以编辑 ClassA 的所有成员(文本字段等),但是如何编辑对象列表然后仍然让它们返回到 post 操作?
当我尝试创建和迭代对象并将它们添加到表单时,它不会与对象(ClassA)一起返回,并且对象列表为空。
请帮忙。这样做的最佳做法是什么?
下面是一个例子
public ActionResult Edit(int id)
{
ClassA objA = db.ClassAs.Single(a => a.id == id);
objA.myListOfBs.Add(new ClassB());
return View(objA);
}
[HttpPost]
public ActionResult Create(ObjectA obj)
{
obj.myListOfBs <--- this is empty! :(
if (ModelState.IsValid)
{
}
return View(obj);
}
模型类是:
class ClassA {
int id;
List<ClassB> myListOfBs;
}
class ClassB {
int id;
string name;
}
这是我的看法
@model MyProject.Models.ClassA
@{
ViewBag.Title = "ClassA Object";
}
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Objects</legend>
@Html.EditorFor(model => model.myListOfBs)
<p>
<input type="submit" value="Save" />
</p>
</fieldset>
}