全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C#构建分页应用的方法分析

本文实例讲述了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小时内与您取得联系。