将动态创建的控件数据保存在数据库asp.net mvc中
本文关键字:asp 数据库 net mvc 存在 保存 创建 动态 控件 数据 | 更新日期: 2023-09-27 18:29:55
我正在使用具有项目列表的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方法。但不确定我应该把在整个Create View和中所有项目中迭代的代码放在哪里
型号.附加信息
将保存到数据库
试试这个:
[HttpPost]
public ActionResult Create(List<StudentAdditionalDetail> additionalFields)
{
ads.AddAdditionalDetails(additionalFields);//calls the insert method
return RedirectToAction("Index");
}