将控件绑定到EditorFor模板中的父模型

时间:2013-02-27 18:52:41

标签: c# asp.net-mvc razor asp.net-mvc-4

情况如下: 我有一个绑定到父模型的视图。在这个视图中,我调用EditorFor并传递子对象。但是在那个EditorFor中,我想绑定一个父模型的控件。我该怎么做?我还需要绑定验证控件。我在父模型中创建了属性。

@model ParentModel
   //Parent view 
  @using (Html.BeginForm())
  { 
       @Html.ValidationSummary(true)
       @Html.EditorFor(m => m.Entity, new { CountiesServed = Model.CountiesServed, Types = Model.EntityTypes, CommunicationMethods = Model.CommunicationMethods, OrganizationTypes = Model.OrganizationTypes })

            <p class="form-actions" style="text-align:right;">
                <button type="submit" >Next &#187;</button>
            </p>
   }

在子视图中 - 我想将控件绑定到其视图模型而不是父视图//模型。     @model ChildModel

@Html.EditorFor(m=>m.somechildentityproperty) 

//But how to do something like this? 
@Html.EditorFor(//ParentModel property) ??? 

1 个答案:

答案 0 :(得分:1)

如果EditorFor没有使用用作其模型的属性,那么这是一个警告标志,它实际上应该是部分视图而不是EditorFor。这样您就可以轻松传入父模型。

否则,保留EditorFor你必须将父模型放在子属性上,凌乱至少可以说。