zoukankan      html  css  js  c++  java
  • aspnetpager分页配通用存储过程

    存储过程  http://www.cnblogs.com/hejunrex/archive/2011/10/26/2224895.html

     ==DAL==

           /// <summary>
            
    /// 获取分页数据
            
    /// </summary>
            
    /// <param name="tblName">表名、视图、表连接 如:'xtest'</param>
            
    /// <param name="strGetFields">需要返回的列如:'xname,xdemo'</param>
            
    /// <param name="strWhere">查询条件(注意:不要加where)</param>
            
    /// <param name="strOrder">排序的字段名如:'order by id desc'</param>
            
    /// <param name="pageIndex">开始记录位置</param>
            
    /// <param name="pageSize">每页记录数</param>
            
    /// <param name="doCount">记录总数</param>
            
    /// <param name="recordCount">非0则统计,为0则不统计</param>
            
    /// <returns></returns>
            public DataTable GetPageData(string tblName,string strGetFields,string strWhere,string strOrder,int pageIndex,int pageSize,int doCount,out int recordCount)
            {
                SqlParameter[] prams ={
                                     new SqlParameter("@tblName",SqlDbType.VarChar),
                                     new SqlParameter("@strGetFields",SqlDbType.VarChar),
                                     new SqlParameter("@strWhere",SqlDbType.VarChar),
                                     new SqlParameter("@strOrder",SqlDbType.VarChar),
                                     new SqlParameter("@pageIndex",SqlDbType.Int),
                                     new SqlParameter("@pageSize",SqlDbType.Int),
                                     new SqlParameter("@doCount",SqlDbType.Int),
                                     new SqlParameter("@recordCount",SqlDbType.Int)
                                     };
                prams[0].Value = tblName;
                prams[1].Value = strGetFields;
                prams[2].Value = strWhere;
                prams[3].Value = strOrder;
                prams[4].Value = pageIndex;
                prams[5].Value = pageSize;
                prams[6].Value = doCount;
                prams[7].Direction = ParameterDirection.Output;
                DataTable dt = DbHelperSQL.RunProcedure("xp_GetDataPaged_2005", prams, "PageData").Tables[0];
                recordCount = (int)prams[7].Value;
                return dt;
            }

     ==BLL==

     /// <summary>
            
    /// 获取分页数据
            
    /// </summary>
            
    /// <param name="tblName">表名、视图、表连接 如:'xtest'</param>
            
    /// <param name="strGetFields">需要返回的列如:'xname,xdemo'</param>
            
    /// <param name="strWhere">查询条件(注意:不要加where)</param>
            
    /// <param name="strOrder">排序的字段名如:'order by id desc'</param>
            
    /// <param name="pageIndex">开始索引位置</param>
            
    /// <param name="pageSize">每页记录数</param>
            
    /// <param name="doCount">记录总数</param>
            
    /// <param name="recordCount">非0则统计,为0则不统计</param>
            
    /// <returns></returns>
            public DataTable GetPageData(string tblName, string strGetFields, string strWhere, string strOrder, int pageIndex, int pageSize, int doCount, out int recordCount)
            {
                SteelMachining.DAL.AspNetPager AspNetPagerDAL = new SteelMachining.DAL.AspNetPager();
                DataTable dt= AspNetPagerDAL.GetPageData(tblName, strGetFields, strWhere, strOrder, pageIndex, pageSize, doCount, out recordCount);
                return dt;
            }

     ==Web==

     private void Bind()
            {
                int recordCount = 0;
                DataTable dt = (new SteelMachining.BLL.AspNetPager()).GetPageData("companyInfo""id""""order by id desc", AspNetPager1.CurrentPageIndex, AspNetPager1.PageSize, 1out recordCount);
                AspNetPager1.RecordCount = recordCount;
                Repeater1.DataSource = dt;
                Repeater1.DataBind();
            }
            protected void AspNetPager1_PageChanged(object sender, EventArgs e)
            {
                Bind();
            }

    简单记录下...

    其中分页每次算总数可以使用单独方法只计算一次.....

  • 相关阅读:
    firefox native extension -- har export trigger
    配置jenkins slave 问题,ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.
    尝试用selenium+appium运行一个简单的demo报错:could not get xcode version. /Library/Developer/Info.plist doest not exist on disk
    ruby 除法运算
    ERB预处理ruby代码
    ruby self.included用法
    ruby include和exclude区别
    symfony安装使用
    解决git中文乱码
    读《微软的软件测试之道》有感(上)
  • 原文地址:https://www.cnblogs.com/hejunrex/p/2226671.html
Copyright © 2011-2022 走看看