【问题标题】:Accessing ViewData Model in PartialView在 PartialView 中访问 ViewData 模型
【发布时间】:2016-04-03 23:44:34
【问题描述】:

我像这样将数据传递给局部视图。

@foreach (var order in Model.Orders)
{
    @Html.Partial("_GridCellsPartial", null, new ViewDataDictionary(new  ViewDataDictionary() { { "order", order } }) { Model = Model })
}

现在有一种方法可以在部分视图中访问订单。 Order 还有一个项目列表。那么我是否能够以某种方式从 viewdatadictionary 中获取订单,然后获取其中的列表项。

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-partialview viewdata


    【解决方案1】:

    只需将“订单”实例作为模型对象直接传递给“Partial”方法,并在“_GridCellsPartial”PartialView 中按以下方式使用它:

    渲染:

    @foreach (var order in Model.Orders)
    {
        @*@Html.Partial("_GridCellsPartial", null, new ViewDataDictionary(new  ViewDataDictionary() { { "order", order } }) { Model = Model })*@
    
        @Html.Partial("_GridCellsPartial", order)
    }
    

    _GridCellsPartial:

    @model OrderTypeClassNameHere
    
    <ul>
    @foreach (var item in Model.Items)
    {
        @*Model = Order Instance*@
        <li>@item</li>
    }
    </ul>
    

    【讨论】:

      【解决方案2】:

      您可以像在普通字典中一样访问您的 ViewData 数据:

      @ViewData["yourkey"]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-01-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多