我正在使用包含项目列表
的viewbag创建控件 public ActionResult Create()
{
var savedAdditionalFields = afs.getAllStudentFieldss(1);
ViewBag.AdditionalFieldList = savedAdditionalFields;
return View();
}
在我正在使用的视图中
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>StudentAdditionalDetail</legend>
@foreach (MyClass item in ViewBag.AdditionalFieldList)
{
<div>
@Html.DisplayFor(itemlist=>item.Name)
@Html.EditorFor(model=>model.AdditionalInfo)
</div>
}
创建控件和标签。 现在我使用
保存数据库中的项目[HttpPost]
public ActionResult Create(StudentAdditionalDetail additionalFields)
{
ads.AddAdditionalDetails(additionalFields);//calls the insert method
return RedirectToAction("Index");
}
但是只有第一个Textbox的数据被保存在数据库中。我想我需要迭代我的[HttpPost] Create Method.But不知道我应该在哪里放置将在我的Create View和所有项目中迭代的代码/ p>
model.AdditionalInfo
将保存到数据库
答案 0 :(得分:0)
试试这个:
[HttpPost]
public ActionResult Create(List<StudentAdditionalDetail> additionalFields)
{
ads.AddAdditionalDetails(additionalFields);//calls the insert method
return RedirectToAction("Index");
}