• SqlServer分页操作


    1、SqlServer数据库分页查询语句 如下:

    (对于不同的数据库请参照我的 数据库分页查询文章)

    --pageSize 每页显示的数量
    --pageIndex 起始索引
    select top pageSize * 
    rom (select row_number() over(order by ID asc) as rownumber,*
    from student) temp_row
    where rownumber>((pageIndex-1)*pageSize);

    css3分页样式

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8"> 
    <title>菜鸟教程(runoob.com)</title> 
    <style type="text/css">
        
        /*设置div样式的整体布局*/
        .page-icon{
            margin:20px 0 0 0;/*设置距离顶部20像素*/
            font-size:0;/*修复行内元素之间空隙间隔*/
            text-align:center;/*设置内容居中显示*/
        }
        
        /*设置共有的的样式布局,主要是进行代码优化,提高运行效率*/
        .page-icon a,.page-disabled,.page-next{
            border:1px solid #ccc;
            border-radius:3px;
            padding:4px 10px 5px;
            font-size:14PX;/*修复行内元素之间空隙间隔*/
            margin-right:10px;
        }
        
        /*对 a 标签进行样式布局 */
        .page-icon a{
            text-decoration:none;/*取消链接的下划线*/
            color:#005aa0;
        }
        
         .page-current{
            color:#ff6600;
            padding:4px 10px 5px;
            font-size:14PX;/*修复行内元素之间空隙间隔*/
        }
        
        .page-disabled{
            color:#ccc;
        }
        
        .page-next i,.page-disabled i{
            cursor:pointer;/*设置鼠标经过时的显示状态,这里设置的是显示状态为小手状态*/
            display:inline-block;/*设置显示的方式为行内块元素*/
            5px;
            height:9px;
            background-image:url(http://img.mukewang.com/547fdbc60001bab900880700.gif);/*获取图标的背景链接*/
        }
        .page-disabled i{
            background-position:-80px -608px;
            margin-right:3px;
        }
     
        .page-next i{
            background-position:-62px -608px;
            margin-left:3px;
        }
    </style>
    </head>
     
    <body>
    <div class="page-icon">
        <span class="page-disabled"><i></i>上一页</span>
        <span class="page-current">1</span>
        
     <a  href="#">2</a>
        <a href="#">3</a>
        <a href="#">4</a>
        <a href="#">5</a>
        <a href="#">6</a>
        <a href="#">7</a>
        ……
        <a href="#">199</a>
        <a href="#">200</a>
        <a class="page-next" href="#">下一页<i></i></a>
    </div>
     
    </body>
    </html>
    View Code

    效果图如下:

    对于控制层进行如下部署

     public ActionResult Index()
            {
                
                
                int pageIndex;
                if (!int.TryParse(Request["pageIndex"],out pageIndex))
                {
                    pageIndex= 1;
                }
              
                //每页显示数据
                int pageSize = 5;
                //统计总记录
                int recordCount = db.Student.Where<Student>(s=>true).Count();
                //总的页数
                int pageCount = Convert.ToInt32(Math.Ceiling((double)recordCount / pageSize));
                pageIndex = pageIndex < 1 ? 1 : pageIndex;
                pageIndex = pageIndex > pageCount ? pageCount : pageIndex;
    
              ///SQL语句操作部分自行添加
                ViewData["stuList"] = stuList;//sb.ToString();
                ViewData["pageIndex"] = pageIndex;
                ViewData["pageCount"] = pageCount;
                return View();
            }
    View Code

    在前台部分通过paperHelper.cs进行调用

     <div class="page-icon" style="text-align:center;margin-top:20px;">
                @Html.Raw(@PageBarHelper.GetPagaBar((int)@ViewData["pageIndex"], (int)@ViewData["pageCount"]))
     </div>

    paperHelper. cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MVCDemo
    {
       public class PageBarHelper
        {
           public static string GetPagaBar(int pageIndex, int pageCount)
           {
               if (pageCount == 1)
               {
                   return string.Empty;
               }
               int start = pageIndex - 5;//计算起始位置.要求页面上显示10个数字页码.
               if (start < 1)
               {
                   start = 1;
               }
               int end = start + 9;//计算终止位置.
               if (end > pageCount)
               {
                   end = pageCount;
                   //重新计算一下Start值.
                   start = end - 9 < 1 ? 1 : end - 9;
               }
               StringBuilder sb = new StringBuilder();
               if (pageIndex > 1)
               {
                    //sb.AppendFormat("<a href='?pageIndex={0}' class='myPageBar'>上一页</a>", pageIndex - 1);
                      sb.AppendFormat("<a href='?pageIndex={0}' class='page-disabled'>上一页</a>", pageIndex - 1);
                }
               for (int i = start; i <= end; i++)
               {
                   if (i == pageIndex)
                   {
                       sb.Append(i);
                   }
                   else
                   {
                       sb.AppendFormat("<a href='?pageIndex={0}' class='page-current'>{0}</a>", i);
                   }
               }
               if (pageIndex < pageCount)
               {
                   sb.AppendFormat("<a href='?pageIndex={0}' class='page-next'>下一页</a>", pageIndex + 1);
               }
    
               return sb.ToString();
           }
        }
    }
    View Code
  • 相关阅读:
    eletron打包
    助力ASP.NET Core 2.1开发!Layx 企业级弹窗插件发布!
    springcloud 入门 3 (服务之间的调用)
    springcloud 入门 2 (Enreka的服务和注册)
    springcloud 入门 1 (浅谈版本关系)
    springboot 学习之路 18(webflux详细介绍(2))
    springboot 学习之路 17(webflux 入门 (1))
    springboot 学习之路 15(集成shiro)
    Mongodb的入门(6)副本集
    Mongodb的入门(4)mongodb3.6的索引
  • 原文地址:https://www.cnblogs.com/senfanxie/p/11128643.html
Copyright © 2020-2023  润新知