zoukankan      html  css  js  c++  java
  • C# 分页方法

        /// <summary>
        /// 分页实体
        /// </summary>
        public class PageInfo
        {
            private int iPage;
            /// <summary>
            /// 当前页码
            /// </summary>
            public int IPage
            {
                get { return iPage; }
                set { iPage = value; }
            }
            private int iPageSize;
            /// <summary>
            /// 每页条数
            /// </summary>
            public int IPageSize
            {
                get { return iPageSize; }
                set { iPageSize = value; }
            }
            private string strTable;
            /// <summary>
            /// 查询的表
            /// </summary>
            public string StrTable
            {
                get { return strTable; }
                set { strTable = value; }
            }
            private string strText;
            /// <summary>
            /// 查询的字段
            /// </summary>
            public string StrText
            {
                get { return strText; }
                set { strText = value; }
            }
            private string strWhere;
            /// <summary>
            /// 查询的条件
            /// </summary>
            public string StrWhere
            {
                get { return strWhere; }
                set { strWhere = value; }
            }
            private string strIndex;
            /// <summary>
            /// 索引
            /// </summary>
            public string StrIndex
            {
                get { return strIndex; }
                set { strIndex = value; }
            }
            private string strOrder;
            /// <summary>
            /// 排序字段
            /// </summary>
            public string StrOrder
            {
                get { return strOrder; }
                set { strOrder = value; }
            }
        }

    SqlServer

            /// <summary>
            /// 分页方法
            /// </summary>
            /// <param name="p">分页实体</param>
            /// <param name="parameters">查询参数</param>
            /// <param name="outCount">数据总数</param>
            /// <returns></returns>
            public static DataTable Page(PageInfo p, SqlParameter[] parameters, out int outCount)
            {
                string SqlCount, Sql, TempOrder;
                if (p.StrOrder != "")
                { TempOrder = " order by " + p.StrOrder; }
                else
                { TempOrder = ""; }
                if (p.IPage == 1)
                {
                    Sql = "select top " + p.IPageSize + " " + p.StrText + " from " + p.StrTable + " where 1=1 " + p.StrWhere +
                      TempOrder;
                }
                else
                {
                    Sql = "select top " + p.IPageSize + " " + p.StrText + " from " + p.StrTable + " where " + p.StrIndex +
                      " not in (select top " + (p.IPageSize * (p.IPage - 1)) + " " + p.StrIndex + " from " + p.StrTable +
                      " where 1=1 " + p.StrWhere + TempOrder + ") " + p.StrWhere + TempOrder;
                }
                SqlCount = "select isnull(count(*),10000)   from " + p.StrTable + "  where 1=1 " + p.StrWhere;
                string ls_Temp = SqlHelper.ExecuteScalar(SqlCount, parameters);
                try
                { outCount = Convert.ToInt32(ls_Temp); }
                catch { outCount = 0; }
                DataTable dt = SqlHelper.ExecuteDataTable(CommandType.Text, Sql, parameters);
                return dt;
            }

    MySQL

            /// <summary>
            /// 分页方法
            /// </summary>
            /// <param name="p">分页实体</param>
            /// <param name="parameters">查询参数</param>
            /// <param name="outCount">数据总数</param>
            /// <returns></returns>
            public static DataTable Page(PageInfo p, SqlParameter[] parameters, out int outCount)
            {
                string SqlCount, Sql, TempOrder;
                if (p.StrOrder != "")
                { TempOrder = " order by " + p.StrOrder; }
                else
                { TempOrder = ""; }
                if (p.IPage == 1)
                {
                    Sql = "select " + p.StrText + " from " + p.StrTable + " where 1=1 " + p.StrWhere +
                      TempOrder + " limit 0," + p.IPageSize;
                }
                else
                {
                    Sql = "select " + p.StrText + " from " + p.StrTable + " where 1=1 " + p.StrWhere +
                      TempOrder + " limit " + (p.IPageSize * (p.IPage - 1)) + "," + p.IPageSize;
                }
                SqlCount = "select ifnull(count(*),10000)   from " + p.StrTable + "  where 1=1 " + p.StrWhere;
                string ls_Temp = SqlHelper.ExecuteScalar(SqlCount, parameters);
                try
                { outCount = Convert.ToInt32(ls_Temp); }
                catch { outCount = 0; }
                DataTable dt = SqlHelper.ExecuteDataTable(CommandType.Text, Sql, parameters);
                return dt;
            }
  • 相关阅读:
    事件驱动模型 泽桐
    装饰器 泽桐
    多用户在线FTP程序 泽桐
    gevent协程、select IO多路复用、socketserver模块 改造多用户FTP程序例子 泽桐
    mysql系列学习 泽桐
    mysql练习题 泽桐
    第1章 Python基础 泽桐
    协程 泽桐
    利用统计进行中文分词与词性分析
    js 数字输入控制,保留两位小数
  • 原文地址:https://www.cnblogs.com/bo10296/p/5139451.html
Copyright © 2011-2022 走看看