5

ネストされたビュー モデルからのポスト バック値のみを受け入れることは可能ですか?

たとえば、「住所」のみを投稿したい:

@Html.TextBoxFor(p => p.User.Account.Address.Street)
@Html.ValidationMessageFor(p => p.User.Account.Address.Street)

このコントローラー アクションに:

[HttpPost]
public ActionResult SaveAddress(Address address) {
  // save to db here
}
現在、プロパティが次のようになるように、アドレスを独自の部分ビューに渡した場合にのみ、値がポストバックされます。
@Html.TextBoxFor(p => p.Street)
@Html.ValidationMessageFor(p => p.Street)

4

1 に答える 1

7

バインディング プレフィックスを指定できます。

[HttpPost]
public ActionResult SaveAddress([Bind(Prefix = "User.Account")] Address model) 
{
    ...
}

別の可能性は、パーシャルを使用することです。

@Html.Partial("_Address", Model.User.Account.Address)

そして内部_Address.cshtml

@model Address
@Html.TextBoxFor(p => p.Street)
@Html.ValidationMessageFor(p => p.Street)
于 2012-08-21T16:02:17.963 に答える