操作结果更新 MVC4 中动态列表的数据库

本文关键字:列表 数据库 动态 结果 更新 MVC4 操作 | 更新日期: 2023-09-27 18:36:56

我需要在我的控制器中保存用户内联版本的操作结果。我成功地使用 http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx 中的源从 edmx 创建列表,但是当我保存时,我不知道如何处理操作结果。

查看我的 cstml:

    @model List<SCP___AgroGerente.Models.VeiculoFazendaUsuario>
@{
    ViewBag.Title = "Index";
}
<div class="Cabecalho">
    <div class="left">
        <h2>Lista de Veículos</h2>
        <h4>Aqui você cadastra as Veículos</h4>
    </div>
    <div class="right" style="padding-top: 28px">
        @Html.ActionLink(" ", "Create", string.Empty, new { @class = "icone new" })
    </div>
    <div class="clear"></div>
    <hr />
</div>
<table class="tabelaFormatada">
    <tr>
        <th>Especificação
        </th>
    </tr>
    @using (Html.BeginForm())
    {
        for (int i = 0; i < Model.Count(); i++)
        {
        <tr>
            <td>
                @Html.EditorFor(m => Model[i].VeiculoEspecificacao);
            </td>
        </tr>
        }
        <p>
            <input type="submit" value="Salvar Alterações" />
        </p> }
</table>

操作结果更新 MVC4 中动态列表的数据库

您说要更新列表,但操作链接指向创建方法。如果要执行更新,则需要将操作链接的操作指向执行更新的方法。如果您需要示例,请告诉我。

您需要在控制器中的 POST 方法中返回模型。如果您保留了默认基架,它应该已经存在。

它应该看起来像这样...

    public ActionResult Create()
    {
        return View();
    }
    //
    // POST: /booking/Create
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create(booking booking)
    {
        if (ModelState.IsValid)
        {
            db.bookings.Add(booking);
            db.SaveChanges();
        }
        return View(booking);
    }

第一种方法是GET方法。第二个是 POST 方法,当您点击提交按钮时将调用该方法。

第二种方法返回包含模型对象的默认视图。如果我想返回不同的视图,我会像这样指定该视图......

返回视图("_myotherview",预订);

"内联编辑"是什么意思?