asp.net MVC3を使用すると、リモート検証が必要な部分的なビューがあります。私はそれを理解するので、それはそれ自身のコントローラが必要なので、私はこのビューを呼び出すためにHtml.Actionを使用しているとコントローラです。モデルをHtml.Actionに渡す
しかし、私はHtml.Actionにモデルを渡したいと思います。私はHtml.Partialと同じようにします。これどうやってするの?
asp.net MVC3を使用すると、リモート検証が必要な部分的なビューがあります。私はそれを理解するので、それはそれ自身のコントローラが必要なので、私はこのビューを呼び出すためにHtml.Actionを使用しているとコントローラです。モデルをHtml.Actionに渡す
しかし、私はHtml.Actionにモデルを渡したいと思います。私はHtml.Partialと同じようにします。これどうやってするの?
Html.Actionには、オブジェクトとしてルート値が必要なオーバーロードがあります。そこにモデルを渡してみると、モデルバインドが始まります。あなたのアクションはModel型のパラメータを期待していなければなりません。
Html.Action("ActionName","ControllerName", Model)
あなたは匿名クラス
@Html.Action("Menu", "MyController", new { data = Model.Foo.Bar})
[ChildActionOnly]
public ActionResult Menu(Bar data)
{
return PartialView("Menu", data);
}
Html.Action(とモデルを渡す必要がありますが)するViewResult \するPartialViewResultを返すだけのコントローラメソッド「それは自分のコントローラだ」必要がありません – gdoron