地铁二期项目正式开始

PagerDALcs.cs 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data;
  6. using YTSoft.DBUtility;
  7. namespace YTSoft.BaseCallCenter.DAL
  8. {
  9. public class PagerDAL
  10. {
  11. /// <summary>
  12. /// 分页获取数据
  13. /// </summary>
  14. /// <param name="PageSize"></param>
  15. /// <param name="PageIndex"></param>
  16. /// <param name="strWhere"></param>
  17. /// <returns></returns>
  18. public static DataTable GetListPager(string TableName, string PK, string Fields, string WhereStr, string OrderStr, int PageSize, int PageIndex, bool IsCount, out int RecordCount)
  19. {
  20. DataTable dt = DbHelperSQL.RunPagination(TableName, PK, Fields, WhereStr, OrderStr, PageSize, PageIndex, IsCount, out RecordCount);
  21. return dt;
  22. }
  23. public static DataTable GetTableList(string TableName, string PK, string Fields, string strWhere, string orderby, int PageSize, int PageIndex, out int RecordCount)
  24. {
  25. StringBuilder strSqlCount = new StringBuilder();
  26. strSqlCount.AppendFormat("SELECT count(1) FROM {0} ", TableName);
  27. strSqlCount.Append(" WHERE 1=1 " + strWhere);
  28. RecordCount= DbHelperSQL.GetSingle(strSqlCount.ToString()).ToInt32() ;
  29. StringBuilder strSql = new StringBuilder();
  30. strSql.Append("SELECT * FROM ( ");
  31. strSql.Append(" SELECT ROW_NUMBER() OVER (");
  32. strSql.Append("order by " + orderby);
  33. strSql.AppendFormat(")AS Row, {0} from {1} ", Fields.Replace("\r\n"," "), TableName);
  34. strSql.Append(" WHERE 1=1 " + strWhere);
  35. strSql.Append(" ) TT");
  36. strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", (PageIndex-1)* PageSize+1, PageIndex*PageSize);
  37. DataSet ds= DbHelperSQL.Query(strSql.ToString());
  38. if (ds != null && ds.Tables[0] != null)
  39. {
  40. return ds.Tables[0];
  41. }
  42. return null;
  43. }
  44. }
  45. }