【问题标题】:Web razor grid in mvc View only works with the type IEnumerable?mvc 视图中的 Web razor 网格仅适用于 IEnumerable 类型?
【发布时间】:2011-12-13 19:40:00
【问题描述】:

下午好... 我正在尝试实现一个网络网格网络网格并将其称为部分,但是当被调用时 类型错误发送部分和需要错误类型..我看到我查看了 web 部分网格是我 mandaondo IEnumerable 而不是 IEnumerable 的模型...有某种形式的更改使网格不能与网页一起工作可数? 当我调用局部视图时,另一件事必须是相同类型的视图? to call 给出另一个目录的视图?

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 razor


    【解决方案1】:

    如果您询问是否需要使用 IEnumerable 对包含 WebGrid 的视图进行强类型化,那么答案是否定的。您可以通过 ViewBag 将您的收藏传递给 WebGrid:

    controller :
    
    List<MyObject> myList = new List<MyObject>();
    // do something with the list
    ViewBag.MyCollection = myList;
    
    view:
    @{
    var grid = new WebGrid(ViewBag.MyCollection);
     }
    

    但如果你问 WebGrid 是否需要 IEnumerable - 是的,你需要传递一个 IEnumerable 接口实现对象(List、Linq 结果等)

    要调用部分交叉控制器,您可以轻松做到:

    @Html.Partial("~/Views/Controller/View", model)
    

    看看Calling @Html.Partial to display a partial view belonging to a different controller

    我真的希望我猜对了你的问题......

    【讨论】:

    • 与局部视图一起传递的模型必须是veiw的模型?有什么办法不通过模型?一个例子..当调用部分运行控制器并且它只是加载网格?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-28
    • 2011-12-03
    • 2013-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多