如何投射类型为'<;TakeIterator>;[System.Data.DataView]';键入

本文关键字:Data System DataView 键入 TakeIterator 何投射 lt 类型 gt | 更新日期: 2023-09-27 17:58:33

我使用的是dataview和它的skip and take方法,它将占用5行,并根据页码和页面大小跳过一些行。

//creating a dataview object and assigning table[0]
dv = new DataView(ds.Tables[0]);

我面临错误的下一行是:

dv=(DataView)dv.Cast<System.Data.DataView>().Skip((pageNum-1)*pageSize).Take(5);

在上述线路上发生的错误是:

Unable to cast object of type '<TakeIterator>d__3a`1[System.Data.DataView]' to type 'System.Data.DataView'.

需要帮助。thanx。

如何投射类型为'<;TakeIterator>;[System.Data.DataView]';键入

它的工作方式有点不同,您可以执行以下操作:

        var dt = ds.Tables[0];
        dt = dt.AsEnumerable().Skip((pageNum - 1) * pageSize).Take(5).CopyToDataTable();
        var dv = new DataView(dt);
        GridView1.DataSource = dv;
        GridView1.DataBind();

不要忘记"使用System.Data;",如果你有时间,请查找LINQ。。。