从一个父编辑表单更新多个子实体

本文关键字:更新 表单 编辑 实体 一个 | 更新日期: 2023-09-27 17:54:54

我有一个使用实体框架的MVC4 c#项目,我想知道如何从父实体更新多个子实体。

我正在使用视图模型将数据从两个模型发送到视图:

public class ResultData
    {
        public Result Result { get; set; }
        public IEnumerable<ResultNote> ResultNotes { get; set; }
    }

所以我想在结果编辑表单上更新所有结果的注释。

我的观点:

@model RSC3_DB.ViewModels.ResultData
@foreach (var note in Model.ResultNotes)
  {
    <div class="editor-field">
        @Html.EditorFor(model => note.NoteText)
        @Html.ValidationMessageFor(model => note.NoteText)
    </div>
  }

将它们正确地呈现在表单上。我的问题是我需要把什么结果控制器"[HttpPost]ActionResult编辑"方法使更改ResultNotes?

从一个父编辑表单更新多个子实体

原来你只需要使用一个for循环,指定一个指定的索引值,并列出每个模型属性。

for (int i = 0; i < Model.ResultNotes.Count(); i++ )