1

ユーザーからインライン エディションを保存するコントローラーでアクションの結果が必要です。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>
4

1 に答える 1

0

あなたはリストを更新したいと言っていますが、アクション リンクは create メソッドを指しています。更新を実行している場合は、actionlink のアクションを、更新を実行するメソッドにポイントする必要があります。例が必要な場合はお知らせください。

コントローラーの 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 メソッドです。2 つ目は、送信ボタンを押したときに呼び出される POST メソッドです。

2 番目のメソッドは、モデル オブジェクトを含む既定のビューを返します。別のビューを返したい場合は、そのビューを次のように指定します...

return View("_myotherview", 予約);

「インライン編集」とはどういう意味ですか?

于 2013-10-27T14:33:27.440 に答える