5

アイテムのリストを持つビューバッグを使用してコントロールを作成しています

 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");

        }

しかし、最初のテキストボックスのデータだけがデータベースに保存されています.[HttpPost] Create Methodを反復する必要があると思います.しかし、Create Viewとすべてのアイテムを反復するコードをどこに置くべきかわかりません

model.AdditionalInfo

データベースに保存されます

4

1 に答える 1

0

これを試して:

[HttpPost]
public ActionResult Create(List<StudentAdditionalDetail> additionalFields)
{
      ads.AddAdditionalDetails(additionalFields);//calls the insert method
      return RedirectToAction("Index");
}
于 2013-09-03T06:47:26.327 に答える