`

分页算法

阅读更多
 private void DataBinds()
    {
        int pageItem = iarticle.GetArticlePageCount();//获得文总行数

        int num = pageItem % 10;//计算总页数

        int pageSize = pageItem / 10; //总页数

        if (num > 0) //如果大于0则总页数加1
        {
            pageSize++;
        }


        StringBuilder sb = new StringBuilder();

        int forFrom = 0;//循环起始页

        string pageindex = String.Empty;//当前页

        if (Request.QueryString["page"] != null)//当前页索引不等于空则得到当前页
        {
            pageindex = Request.QueryString["page"];
        }
        else
        {
            pageindex = "0";//否则当前页索引等于0
        }

        forFrom = (Convert.ToInt32(pageindex) / 10) * 10;//计算循环起始页

        int forpage = forFrom + 10;//计算循环终止页

        if (pageSize <= forpage)//如果总页数小于等于循环终止页则等于循环终止页
        {
            forpage = pageSize;
        }

        if (forFrom > 0)//判断循环的页面是否在1-10之内,如果为true则加上'<<',代表第一页
        {
            sb.Append(String.Format("<a href='Default.aspx?page{0}'>{1}</a>", 0, "<<"));
        }

        if (forFrom > 0)//判断循环的页面是否在1-10之内如果为true则加上:'<',代表上一页
        {
            sb.Append(string.Format("<a href='Default.aspx?page={0}'>{1}</a>", forFrom - 1, "<"));
        }

        for (int i = forFrom; i < forpage; i++)//循环出当前的计算出的页面
        {
            sb.Append(string.Format("<a href='Default.aspx?page={0}'>{1}</a>", i, i + 1));
        }

        if (pageSize > forpage)//如果总页数大于循环终止页则在终止页后加上'>' 
        {                      //因为索引从0开始计算所以不需要+1,代表下一页,并且加上最后一页
            sb.Append(string.Format("<a href='Default.aspx?page={0}'>{1}</a>", forpage, ">"));
            sb.Append(string.Format("<a href='Default.aspx?page={0}'>{1}</a>", pageSize - 1, ">>"));
        }

        ltPage.Text = sb.ToString(); //放入Adrotator控件

        //绑定数据因为索引从0开始计算的所以传入数据库需要+1
        this.Repeater1.DataSource = iarticle.GetArticleAll((Convert.ToInt32(pageindex) + 1), 10);

        this.DataBind();
    }

 

分享到:
评论

相关推荐

    动态分页算法java代码

    动态分页算法是数据库系统和Web应用中常用的一种技术,用于高效地处理大量数据并以分页的形式展示给用户。在Java开发中,实现动态分页通常涉及到对数据集的切片操作,以便只加载用户请求的部分数据。下面将详细阐述...

    高效struts分页算法

    Struts分页算法是Web应用开发中的重要组成部分,特别是在大型数据集展示时,为了提高用户体验,需要将数据分页展示。本算法遵循Model-View-Controller(MVC)设计模式,使得代码结构清晰,易于维护。 在Struts框架...

    海量数据库的查询优化及分页算法方案

    海量数据库的查询优化及分页算法方案 随着大规模数据库的出现,如何高效地从这些超大容量的数据库中提取数据、分析、统计以及进行数据分页已经成为一个亟待解决的难题。以下我们将探讨如何在有着1000万条数据的MS ...

    mysql_海量数据库的查询优化及分页算法方案.doc

    MySQL 海量数据库的查询优化及分页算法方案 在大规模数据库中,查询优化和分页算法是两个非常重要的方面。本文将详细介绍 MySQL 海量数据库的查询优化和分页算法方案。 一、查询优化 查询优化是指通过调整查询...

    纯Java分页算法完整版本

    这个我人写的一个纯Java版的分页算法,与平台无关性,具有很好的通用性,同时附带完整的工程; 工程使用SQLServer2005,建表脚本在工程下的Setup中,根据你个人的数据库调整资源文件中的配置即可运行;同时这个算法...

    分页算法 AspNetPager 分页实例 分页sql语句

    本篇将详细探讨分页算法、AspNetPager控件以及相关的SQL分页语句。 首先,我们来了解分页算法。分页算法的核心目标是将数据库中的大量数据分割成若干个小的、可管理的部分,每次只加载一部分到前端展示。常见的分页...

    分页算法 c语言代码

    根据提供的标题、描述以及部分代码内容,我们可以总结出以下关于分页算法的知识点: ### 分页算法概述 分页算法是计算机科学中的一个重要概念,在Web开发中尤其常见。它的主要目的是将大量的数据按照一定的规则...

    Java 分页算法祥解

    ----------=====Java 分页算法 =====------------ 1.Struts+JDBC分页算法 1.1 创建分页控制类(如果使用kevinb.jar可以省略本步) --创建接口Pageable.java --创建实现类PageableResultSet.java 使用以这个实现类来...

    分页算法java实现

    ### 分页算法在Java中的实现解析 #### 引言 分页是数据处理中的一个常见需求,尤其是在Web应用中,为了提升用户体验和减轻服务器压力,将大量数据分批展示是必要的。本文将深入分析一段Java代码,该代码实现了分页...

    网页上实现分页算法

    在网页开发中,分页算法是一项重要的技术,它使得大量数据可以被有效地组织和呈现,提高了用户体验。结合面向对象编程(OOP)思想,我们可以创建一个分页对象,以简化DAO(数据访问对象)层的代码,使得数据的分页...

    JAVA大数据分页算法

    在大数据处理领域,分页算法是至关重要的,尤其是在Java编程环境下。当我们在处理大量数据时,一次性加载所有数据到内存可能会导致性能问题甚至内存溢出。因此,分页查询成为了一个有效的解决方案,它允许我们每次只...

    DREAMWEAVER的分页算法ASP

    ### DREAMWEAVER的分页算法ASP #### 背景介绍 Dreamweaver是一款由Adobe公司开发的专业网页设计工具,它可以帮助开发者快速构建、编辑以及管理网站内容。随着互联网的发展,数据量逐渐增大,如何高效地展示大量...

    oracle分页算法

    对oracle操作报表,能够对数据进行分裂分页算法

    高效率spring+struts+hibernate分页算法

    ### 高效率Spring+Struts+Hibernate分页算法解析 #### 一、引言 在Web应用程序开发过程中,为了提高用户体验以及系统性能,分页显示数据成为了一项必不可少的功能。本篇文章将详细介绍一种基于Spring、Struts和...

    os.zip_doneaj3_rainct2_请求分页_请求分页算法_请求分页系统

    2. 请求分页算法:这些算法决定了当内存中没有空闲页面时,应该选择哪个页面进行淘汰,以便为新的页面腾出空间。 - FIFO(先进先出):最简单的策略,选择最早进入内存的页面进行替换。但这种算法容易导致Belady's ...

    经典java分页算法

    Java 分页算法是Java开发中常见的一种数据处理技术,尤其在大数据量的Web应用中,为了提高用户体验,通常会将数据分成多页展示,而不是一次性加载所有数据。这里我们将详细探讨如何实现一个简单的Java分页算法。 ...

Global site tag (gtag.js) - Google Analytics