C#构建分页应用的实例方法分析
c#
这篇文章主要介绍了C#构建分页应用的方法,结合实例形式分析了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#构建分页应用的实例方法分析的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
如何修复KB5055612无法在Windows 10中安装?
4 周前
By DDD
<🎜>:种植花园 - 完整的突变指南
3 周前
By DDD
<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

使用 C# 的 Active Directory 指南。在这里,我们讨论 Active Directory 在 C# 中的介绍和工作原理以及语法和示例。

多线程和异步的区别在于,多线程同时执行多个线程,而异步在不阻塞当前线程的情况下执行操作。多线程用于计算密集型任务,而异步用于用户交互操作。多线程的优势是提高计算性能,异步的优势是不阻塞 UI 线程。选择多线程还是异步取决于任务性质:计算密集型任务使用多线程,与外部资源交互且需要保持 UI 响应的任务使用异步。

可以采用多种方法修改 XML 格式:使用文本编辑器(如 Notepad )进行手工编辑;使用在线或桌面 XML 格式化工具(如 XMLbeautifier)进行自动格式化;使用 XML 转换工具(如 XSLT)定义转换规则;或者使用编程语言(如 Python)进行解析和操作。修改时需谨慎,并备份原始文件。
