MVC 5具有模型属性的局部视图

时间:2014-05-09 21:32:50

标签: c# asp.net-mvc binding model partial-views

我想创建一个显示模型属性的局部视图。 现在我有这样的事情:

<div class="form-group"> 
  @Html.LabelFor(model => model.Property, new { @class = "control-label col-md-2" })
  <div class="col-md-10">
    @Html.TextBoxFor(model => model.Property, new { @class = "form-control" }) 
    @Html.ValidationMessageFor(model => model.Property)
  </div>
</div>

我想将此作为一个单独的控件(局部视图),它将与model属性绑定。

我需要在这些数据(按钮,滑块等)上添加用户附加操作,但我仍然需要将其正确绑定到原始数​​据,并且标签和验证仍然有效。

模型中充满了以下属性:

<nullable>int

所以有了这个局部视图来维护清晰的代码会很好。

我正在玩部分观点,但暂时没有太大的成功。

修改

我不想传递整个模型,因为在局部视图中我需要处理所有属性,我有大约300个,所以要编辑所有这些我需要与js完全相同的代码。因此,在我负责模型的情况下,对于每个属性,我将使用此局部视图。

2 个答案:

答案 0 :(得分:0)

您应该将主视图模型传递给局部视图并显示模型和所有视图

答案 1 :(得分:0)

好的,所以你想为一堆物品创建一个部分。

不确定你是否使用剃须刀,但你可以这样做

     @foreach(var item in Model.items)
    {
      Html.RenderPartial("_PartialView", item);
    }

这将为您想要的每个项目加载一个部分。