我使用的是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。
它的工作方式有点不同,您可以执行以下操作:
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。。。