我现在想写一个数据分页,在网上找了一个,感觉效率比较低:private void BuildPages()
    {
        int Step = 3;//偏移量 
        int LeftNum = 0;//左界限 
        int RightNum = 0;//右界限 
        string PageUrl = Request.FilePath;
        int PageCount = (int)Math.Ceiling((double)(ToatalCountRecord) / PageItem);//
        if (CurrentPage - Step < 1)
        {
            LeftNum = 1;
        }
        else
        {
            LeftNum = CurrentPage - Step;
        }
        if (CurrentPage + Step > PageCount)
        {
            RightNum = PageCount; 
        }
        else
        {
            RightNum = CurrentPage + Step;
        }
        string OutPut = "";
        if (CurrentPage > 1)
        {
            OutPut += " <a href='" + PageUrl + "?page=" + (CurrentPage - 1) + "'>" + "上一页" + " </a>";
        }
        for (int i = LeftNum; i <= RightNum; i++)
        {
            if (i == CurrentPage) //当前页面时,页码为红色
            {
                OutPut += " <font color=red>" + " " + "[" + i.ToString() + "]" + "" + " </font>";
            }
            else
            {
                OutPut += " <a href='" + PageUrl + "?page=" + i.ToString() + "'>" + " " + "[" + i.ToString() + "]" + " " + " </a>";
            }
        }
        if (CurrentPage < PageCount)
        {
            OutPut += " <a href='" + PageUrl + "?page=" + (CurrentPage + 1) + "'>" + "下一页" + " </a>";
        }
        this.PageInfo.InnerHtml = OutPut;
     //绑定数据。。
    } 
如果是大数据的话,这样就太慢了,麻烦哪个提供效率比较好的数字分页?或者存储过程,谢谢