本文实例讲述了C#构建分页应用的方法。分享给大家供大家参考,具体如下:

1、SQL语句
WITH [temptableforStockIC] AS ( SELECT *,ROW_NUMBER() OVER (ORDER BY CreateTime DESC) AS RowNumber FROM [StockIC] WHERE 1=1 AND Model = 'FTY765OP' ) SELECT * FROM [temptableforStockIC] WHERE RowNumber BETWEEN 1 AND 10
2、后台方法
/// <summary>
/// 表名
/// </summary>
private const string _tableNane = "StockIC";
/// <summary>
/// 获取库存列表
/// </summary>
public List<StockIcResult> GetStockIcList(StockIcParam param)
{
List<StockIcResult> list = new List<StockIcResult>();
string sql = "WITH [temptablefor{0}] AS";
sql += " (SELECT *,ROW_NUMBER() OVER (ORDER BY {1}) AS RowNumber FROM [{0}] WHERE 1=1 {2})";
sql += " SELECT * FROM [temptablefor{0}] WHERE RowNumber BETWEEN {3} AND {4}";
StringBuilder sqlCondition = new StringBuilder();
List<SqlParameter> sqlParams = new List<SqlParameter>();
//型号
if (!String.IsNullOrEmpty(param.Model))
{
sqlCondition.AppendFormat(" AND Model LIKE '%{0}%'", param.Model);
}
//开始时间
if (param.BeginTime.HasValue)
{
sqlCondition.Append(" AND CreateTime >= @BeginTime");
sqlParams.Add(new SqlParameter("@BeginTime", param.BeginTime.Value));
}
//结束时间
if (param.EndTime.HasValue)
{
sqlCondition.Append(" AND CreateTime < @EndTime");
sqlParams.Add(new SqlParameter("@EndTime", param.EndTime.Value.AddDays(1)));
}
//排序
if (String.IsNullOrWhiteSpace(param.OrderBy))
{
param.OrderBy = " CreateTime DESC";
}
//分页
param.PageIndex = param.PageIndex - 1;
Int64 startNumber = param.PageIndex * param.PageSize + 1;
Int64 endNumber = startNumber + param.PageSize - 1;
//拼装SQL
sql = String.Format(sql, _tableNane, param.OrderBy, sqlCondition, startNumber, endNumber);
//执行SQL语句
DataSet dataSet = DBHelper.GetReader(sql.ToString(), sqlParams.ToArray());
list = TranToList(dataSet);
return list;
}
注意:DBHelper.GetReader()方法、TranToList()方法等请自己完善。
一些计算方法
//分页 Int64 startNumber = (param.PageIndex - 1) * param.PageSize + 1; Int64 endNumber = startNumber + param.PageSize - 1; //总页数 = (数据总数 + 分页大小 -1) / 分页大小 TotalPage = (TotalCount + PageSize - 1) / PageSize;
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#字符串操作技巧总结》、《C#数组操作技巧总结》、《C#中XML文件操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》及《C#面向对象程序设计入门教程》
希望本文所述对大家C#程序设计有所帮助。
# C#
# 分页
# C# DataTable分页处理实例代码
# 适用于WebForm Mvc的Pager分页组件C#实现
# C#基于数据库存储过程的AJAX分页实例
# c#分页读取GB文本文件实例
# c#分页显示服务器上指定目录下的所有图片示例
# C#拼接SQL语句 用ROW_NUMBER实现的高效分页排序
# 基于jquery的分页控件(C#)
# C#中常用的分页存储过程小结
# C#实现分页组件的方法
# 操作技巧
# 程序设计
# 相关内容
# 感兴趣
# 数据结构
# 给大家
# 更多关于
# 所述
# 面向对象
# 计算方法
# 结束时间
# 讲述了
# summary
# lt
# private
# gt
# FTY765OP
# Model
# csharp
相关文章:
如何在企业微信快速生成手机电脑官网?
c# 在高并发下使用反射发射(Reflection.Emit)的性能
如何通过服务器快速搭建网站?完整步骤解析
建站主机如何选?高性价比方案全解析
ppt制作免费网站有哪些,ppt模板免费下载网站?
青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?
如何在IIS服务器上快速部署高效网站?
制作农业网站的软件,比较好的农业网站推荐一下?
如何高效配置IIS服务器搭建网站?
建站主机是否等同于虚拟主机?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
如何使用Golang安装API文档生成工具_快速生成接口文档
建站之星云端配置指南:模板选择与SEO优化一键生成
建站之星代理平台如何选择最佳方案?
网站制作服务平台,有什么网站可以发布本地服务信息?
如何在云指建站中生成FTP站点?
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
建站主机无法访问?如何排查域名与服务器问题
如何选择香港主机高效搭建外贸独立站?
,南京靠谱的征婚网站?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
建站VPS选购需注意哪些关键参数?
如何选择域名并搭建高效网站?
外贸公司网站制作哪家好,maersk船公司官网?
制作网站公司那家好,网络公司是做什么的?
潮流网站制作头像软件下载,适合母子的网名有哪些?
如何用低价快速搭建高质量网站?
公司门户网站制作流程,华为官网怎么做?
盘锦网站制作公司,盘锦大洼有多少5G网站?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?
建站主机服务器选型指南与性能优化方案解析
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
表情包在线制作网站免费,表情包怎么弄?
网站制作免费,什么网站能看正片电影?
如何通过西部数码建站助手快速创建专业网站?
建站主机如何选?性能与价格怎样平衡?
建站主机功能解析:服务器选择与快速搭建指南
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
如何通过.red域名打造高辨识度品牌网站?
c# 服务器GC和工作站GC的区别和设置
黑客入侵网站服务器的常见手法有哪些?
建站之星免费模板:自助建站系统与智能响应式一键生成
设计网站制作公司有哪些,制作网页教程?
娃派WAP自助建站:免费模板+移动优化,快速打造专业网站
如何通过远程VPS快速搭建个人网站?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
如何批量查询域名的建站时间记录?
如何访问已购建站主机并解决登录问题?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
*请认真填写需求信息,我们会在24小时内与您取得联系。