gridview分页代码(可提高分页速度)
internal static datatable datareadertodatatable(string squery, int istart, int iend)
{
datatable schematable = null;
datatable dt = null;
sqlcommand cmdsql;
sqldatareader dr = null;
sqlconnection conn = null;
long icount = 0;
try
{
//打开数据库教程连接,执行datareader
conn = new sqlconnection(connstring);
conn.open();
cmdsql = new sqlcommand(squery, conn);
dr = cmdsql.executereader(commandbehavior.closeconnection);
schematable = dr.getschematable();
dt = new datatable();//get the schema of tables columns and its types, and load the same into datatable.
for (int i = 0; i <= schematable.rows.count - 1; i++)
{
datarow drow = schematable.rows[i];
datacolumn column = new datacolumn();
column.datatype = system.type.gettype(drow["datatype"].tostring());
column.allowdbnull = (drow["allowdbnull"].tostring() == "true" ? true : false);
column.columnname = drow["columnname"].tostring();
column.caption = drow["columnname"].tostring();
dt.columns.add(column);
//more datatable property can be added as required.
}
if (istart == 0) istart = 1;
if (iend == 0) iend = 1;
icount = 1;//loop the reader which is executed till the start and variable,
//fetch and add the rows one by one to data table till the end count is reached.
// exit the loop and return datable.
while (dr.read())
{
if (icount >= istart && icount <= iend)
{
datarow drow = dt.newrow();
for (int i = 0; i <= dr.fieldcount - 1; i++)
{
drow[i] = dr.getvalue(i);
}
dt.rows.add(drow);
}
else if (icount > iend)
{
break;
}
icount = icount + 1;
}
}
catch (systemexception ex)
{
throw ex;
}
finally
{
conn.close();
conn.dispose();
schematable.dispose();
dr.close();
dr.dispose();
}
return dt;
}
在后台绑定到gridview的方法如下:
private void binddata(int pageindex)
{
int startrow;
int endrow;startrow = (pageindex * grdemployee.pagesize) +1;
endrow= startrow + grdemployee.pagesize -1;
grdemployee.datasource= custompaging.class.common.datareadertodatatable(selectquery,startrow,endrow);
grdemployee.databind();
}
1、执行datareader
2、从我们规定的开始的位置执行datareader
3、执行并得到数据记录
4、将数据记录放到datatable数据集中
5、结束datareader
6、返回datatable数据集。
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔