0

MySomeModelは次のように定義されます。

public class SomeModel
{
   public string property1 { get; set }
   public bool property2 { get; set; }
}

アクションがあります:

public ActionResult Edit(int id)
{
    SomeModel model = new SomeModel();
    //... populate model ...
    return View(model);
}

property1ビューで とproperty2が としてインスタンス化されていると仮定します@Html.EditorFor。この場合、property1は としてレンダリングされ、<input type='text'>property2なります<input type='checkbox'>

編集フォームからの送信を処理する次のコントローラー アクションがあるとします。

[HttpPost]
public ActionResult Edit(int id, SomeModel model, FormCollection collection)
{
}

パラメータ モデルはどのように設定されますか?

4

1 に答える 1

2

次のようなものを使用する場合

[HttpPost]
public ActionResult Action(SomeModel model)
{
    //do something
}

ほのめかしたように、ビューで標準の Html.EditorFor 構文を使用すると、すべてのモデル バインディングが処理されます。

@Html.EditorFor(model => model.Property1)
@Html.EditorFor(model => model.Property2)

モデルバインディングの詳細はこちら

于 2012-04-23T10:22:21.187 に答える