asp.net mysql 分页_ASP.NET和MSSQL高性能分页

1 usingSystem.Data;2 usingSystem.Configuration;3 usingSystem.Web;4 usingSystem.Web.Security;5 usingSystem.Web.UI;6 usingSystem.Web.UI.WebControls;7 usingSystem.Web.UI.WebControls.WebParts;8 usingSystem.Web.UI.HtmlControls;9 usingSystem.Text;10

11 ///

12 ///扩展连接字符串13 ///

14 public classExStringBuilder15 {16 privateStringBuilder InsertString;17 privateStringBuilder PageString;18 private int PrivatePageNum = 1;19 private int PrivateMaxPageSize = 25;20 private int PrivateMaxPages = 10;21 private intPrivateCount;22 private intPrivateAllPage;23 publicExStringBuilder()24 {25 InsertString = new StringBuilder("");26 }27 ///

28 ///得到生成的HTML29 ///

30 public stringGetHtml31 {32 get

33 {34 returnInsertString.ToString();35 }36 }37 ///

38 ///得到生成的分页HTML39 ///

40 public stringGetPageHtml41 {42 get

43 {44 returnPageString.ToString();45 }46 }47 ///

48 ///设置或获取目前页数49 ///

50 public intPageNum51 {52 get

53 {54 returnPrivatePageNum;55 }56 set

57 {58 if (value >= 1)59 {60 PrivatePageNum =value;61 }62 }63 }64 ///

65 ///设置或获取最大分页数66 ///

67 public intMaxPageSize68 {69 get

70 {71 returnPrivateMaxPageSize;72 }73 set

74 {75 if (value >= 1)76 {77 PrivateMaxPageSize =value;78 }79 }80 }81 ///

82 ///设置或获取每次显示最大页数83 ///

84 public intMaxPages85 {86 get

87 {88 returnPrivateMaxPages;89 }90 set

91 {92 PrivateMaxPages =value;93 }94 }95 ///

96 ///设置或获取数据总数97 ///

98 public intDateCount99 {100 get

101 {102 returnPrivateCount;103 }104 set

105 {106 PrivateCount =value;107 }108 }109 ///

110 ///获取数据总页数111 ///

112 public intAllPage113 {114 get

115 {116 returnPrivateAllPage;117 }118 }119 ///

120 ///初始化分页121 ///

122 public voidPagination()123 {124 PageString = new StringBuilder("");125 //得到总页数

126 PrivateAllPage = (int)Math.Ceiling((decimal)PrivateCount / (decimal)PrivateMaxPageSize);127 //防止上标或下标越界

128 if (PrivatePageNum >PrivateAllPage)129 {130 PrivatePageNum =PrivateAllPage;131 }132 //滚动游标分页方式

133 intLeftRange, RightRange, LeftStart, RightEnd;134 LeftRange = (PrivateMaxPages + 1) / 2-1;135 RightRange = (PrivateMaxPages + 1) / 2;136 if (PrivateMaxPages >=PrivateAllPage)137 {138 LeftStart = 1;139 RightEnd =PrivateAllPage;140 }141 else

142 {143 if (PrivatePageNum <=LeftRange)144 {145 LeftStart = 1;146 RightEnd = LeftStart + PrivateMaxPages - 1;147 }148 else if (PrivateAllPage - PrivatePageNum

154 {155 LeftStart = PrivatePageNum -LeftRange;156 RightEnd = PrivatePageNum +RightRange;157 }158 }159

160 //生成页码列表统计

161 PageString.Append(...);162

163 StringBuilder PreviousString = new StringBuilder("");164 //如果在第一页

165 if (PrivatePageNum > 1)166 {167 ...168 }169 else

170 {171 ...172 }173 //如果在第一组分页

174 if (PrivatePageNum >PrivateMaxPages)175 {176 ...177 }178 else

179 {180 ...181 }182 PageString.Append(PreviousString);183 //生成中间页http://www.cnblogs.com/roucheng/

184 for (int i = LeftStart; i <= RightEnd; i++)185 {186 //为当前页时

187 if (i ==PrivatePageNum)188 {189 ...190 }191 else

192 {193 ...194 }195 }196 StringBuilder LastString = new StringBuilder("");197 //如果在最后一页

198 if (PrivatePageNum

203 {204 ...205 }206 //如果在最后一组

207 if ((PrivatePageNum + PrivateMaxPages)

212 {213 ...214 }215 PageString.Append(LastString);216 }217 ///

218 ///生成Tag分类表格219 ///

220 public voidTagTable(ExDataRow myExDataRow)221 {222 InsertString.Append(...);223 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值