0

我已经有看法了。现在我必须在该视图中添加一个新的网络网格。为此,我创建了一个局部视图并尝试在局部中绑定一个 webgrid,但没有成功。:(

这是我的控制器:

public ActionResult RegisteredUsers()
    {
        var query = from p in dc.UserProfile
                    select new RegisterModel()
                    {
                        UserName = p.Name
                    };

        List<RegisterModel> users = query.ToList();

        return View(users);
    }

这是我的部分观点:

<%
    var grid = new WebGrid(Model,rowsPerPage:5);
    %>
    <%: 
       grid.GetHtml(
                    tableStyle: "wGrid",
                    headerStyle: "wGridHeader",
                    alternatingRowStyle: "alt",
                    footerStyle: "wGridFooter",
                    columns: grid.Columns(

                    grid.Column("UserName","User name")

                  )
               )
    %>

但是,它在我的部分视图中显示 webgrid 中的错误。错误是: 必须先绑定数据源才能执行此操作。

该错误是不言自明的。但是“var grid = new WebGrid(Model,rowsPerPage:5);”行中的“模型” 是数据源。不是吗??伙计们知道如何解决这个问题吗?

4

1 回答 1

0

我不确定 aspx 的方式,但是在部分视图的顶部使用 Razor,你必须声明这样的东西,@model <namespace of model>.<modelname>因为你传递了一个列表,那么你需要@model IEnumerable<namespace of model>.RegisterModel.

于 2011-09-15T13:20:53.530 回答