私はこのような2つのビューモデルがあります:今MVC3のネスト部分ページ(およびビューモデル):フォームフィールドはどのようにバインドされますか?
public class ViewModel1 // maps to Model1
{
public string ViewModel1Desc { get; set; }
public ViewModel2 ViewModel2 { get; set; }
public ScheduleMasterEditViewModel()
{
ViewModel2= new ViewModel2();
}
}
public class ViewModel2 // maps to Model2
{
public string ViewModel2Desc { get; set; }
}
を、私はViewModel2のための部分的なページを持っていると思ったとしてViewModel1ためのページを作成することを含める:
Create.cshtmlこの
ようになります@model ViewModels.ViewModel1
@using (Html.BeginForm()) {
@Html.EditorFor(model => model.ViewModel1Desc)
@Html.Partial("~/Views/ViewModel2/_ViewModel2Create.cshtml", Model.ViewModel2)
}
_ViewModel2Create.cshtmlが
@model ViewModels.ViewModel2
@Html.EditorFor(model => model.ViewModel2Desc)
のように見えます
問題がMODEL1について作成し、コントローラに、何もViewModel1.ViewModel2
にバインドされていない取得し、である私は、この正しい方法をやっている、または私はちょうどこのようなすべてのフィールドを書き出す必要があります。
ビューをどのようにレンダリングしていますか? Html.RenderPartialまたはHtml.RenderAction?彼らは別の目的を果たします – CrazyCoderz