手写分页函数C#

王朝c#·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

/**//// <summary>

/// 返回数据集

/// </summary>

/// <param name="sql"></param>

/// <returns></returns>

public DataSet GetData(string sql,string strconn)

{

OleDbConnection ole=new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source="+strconn);

ole.Open();

OleDbCommand cm=new OleDbCommand(sql,ole);

DataSet ds=new DataSet();

OleDbDataAdapter da=new OleDbDataAdapter(cm);

da.Fill(ds);

ole.Close();

return ds;

}

/**//// <summary>

/// 分页

/// </summary>

/// <param name="pagesize">每页大小</param>

/// <param name="pageindex">当前页数</param>

/// <param name="field">获取字段名</param>

/// <param name="tablename">表名</param>

/// <param name="orderfield">排序字段</param>

/// <param name="taxis">排序方式,true为升序,false为降序</param>

/// <param name="condition">满足的条件</param>

/// <returns></returns>

public DataSet GetPage(int pagesize,int pageindex,string field,string tablename,string orderfield,bool taxis,string condition)

{

string temp;

if(taxis)

{

temp="asc";

}

else

{

temp="desc";

}

string sql;

if(pageindex==1)

{

if(condition=="")

{

sql="select top "+pagesize+" "+field+" from "+tablename+" order by "+orderfield+" "+temp;

return GetData(sql);

}

else

{

sql="select top "+pagesize+" "+field+" from "+tablename+" where "+condition+" order by "+orderfield+" "+temp;

return GetData(sql);

}

}

else

{

pageindex=(pageindex-1)*pagesize;

if(condition=="")

{

if(taxis)

{

sql="select top "+pagesize+" "+field+" from "+tablename+" where "+orderfield+">all(select top "+pageindex+" "+orderfield+" from "+tablename+" order by "+orderfield+" "+temp+") order by "+orderfield+" "+temp;

}

else

{

sql="select top "+pagesize+" "+field+" from "+tablename+" where "+orderfield+"<all(select top "+pageindex+" "+orderfield+" from "+tablename+" order by "+orderfield+" "+temp+") order by "+orderfield+" "+temp;

}

return GetData(sql);

}

else

{

if(taxis)

{

sql="select top "+pagesize+" "+field+" from "+tablename+" where "+condition+" and "+orderfield+">all(select top "+pageindex+" "+orderfield+" from "+tablename+" where "+condition+" order by "+orderfield+" "+temp+") order by "+orderfield+" "+temp;

}

else

{

sql="select top "+pagesize+" "+field+" from "+tablename+" where "+condition+" and "+orderfield+"<all(select top "+pageindex+" "+orderfield+" from "+tablename+" where "+condition+" order by "+orderfield+" "+temp+") order by "+orderfield+" "+temp;

}

return GetData(sql);

}

}

}

希望给于评价

http://www.cnblogs.com/wang123/archive/2006/12/08/586505.html

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航