当前位置:编程学习 > C#/ASP.NET >>

AspNetPager怎么用泛型分页(详细),急急~~!

哪位高手发一下,谢谢 --------------------编程问答-------------------- 冒泡帮顶接分

太笼统了吧? --------------------编程问答--------------------  泛型跟  分页有什么关系? --------------------编程问答-------------------- 泛型做数据源,用AspNetdPager怎么分页 --------------------编程问答-------------------- 泛型做数据源 一样直接可以绑定 再把数据源赋给AspNetPager控件 --------------------编程问答-------------------- aspnetpager只需要数据源的记录总条数,和数据源的类型无关, --------------------编程问答-------------------- 楼上说的对,我也看不懂楼主的问题,这和AspNetPager有什么关系呢? --------------------编程问答--------------------
引用 5 楼 yulei243007703 的回复:
aspnetpager只需要数据源的记录总条数,和数据源的类型无关,

我是用Repeater和AspNetdPager做分页,数据源是泛型集合,怎么做?
能说详细点吗?谢谢! --------------------编程问答-------------------- 直接绑定List<T>,其他一样使用 --------------------编程问答-------------------- 不懂``只要数据源有规律一样可以用AspNetdPager来分页` --------------------编程问答-------------------- 楼主基础不够扎实. --------------------编程问答--------------------
引用 10 楼 zhiaini 的回复:
楼主基础不够扎实.

呵呵,还在学ASP.NET啊,谢谢各位高手,能说详细点吗?
--------------------编程问答--------------------     public int PageSize
    {
        get { return (int)ViewState["PageSize"]; }
        set { ViewState["PageSize"] = value; }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
           if (!Page.IsPostBack)
            {
                if (ViewState["PageSize"] == null)
                {
                    PageSize = 1;
                    ShowDataGrid();
                }
            }
    } 
private void ShowDataGrid()
    {
        IList<Human_file> list = Human_fileManager.GetSelectHuman_fileAll();
       this.anpFDetails.RecordCount = list.Count;
       this.gvDocumentCheck.DataSource = Human_fileManager.GetHuman_filesByPageSize(5, PageSize, 1);
        this.anpFDetails.PageSize = 5;//每页显示多少数据
        this.anpFDetails.CurrentPageIndex = PageSize;//当前是第几页
        this.gvDocumentCheck.DataBind();
    }
    //这个事AspNetPager控件的事件。控件的名称anpFDetails
    protected void anpFDetails_PageChanged(object sender, EventArgs e)
    {
        PageSize = this.anpFDetails.CurrentPageIndex;
        ShowDataGrid();
    } --------------------编程问答-------------------- 看了标题感觉迷茫,AspNetdPager 分页根据类型没关系的!楼上的都正解,绑定数据指定需要的数据就行了 --------------------编程问答-------------------- public IList<Orders> PagerOrders(int startIndex, int endIndex)
......
Repeater1.DataSource = ...PagerOrders(AspNetPager1.StartRecordIndex, AspNetPager1.EndRecordIndex);
Repeater1.DataBind(); --------------------编程问答-------------------- 我的项目分了六层,数据访问层返回的是泛型集合给界面层,界面后台代码是Repeater.DataSource=list<T>;
Repeater.DataBind();
现在要用AspNetPage来做分页,都不知道写了
以前自已做的分页是用PagedDataSource做的:
PagedDataSource pds = new PagedDataSource();
pds.DataSource = List<T>;(而AspNetPage没有DataSource)
……
Repeater.DataSource=pds;
Repeater.DataBind();
所以我不知道该怎么做,初学.NET,谢谢各位! --------------------编程问答-------------------- 简单点,你用AspNetPage生成分页存储过程,泛型方法里直接调用,不需要pds源 --------------------编程问答--------------------         public List<m_shop_free> get_freeById(int startRowIndex, int maximumRows, string sortID)
        {
            List<m_shop_free> shop_news = new List<m_shop_free>();
           sql = "SELECT * FROM shop_list_cate WHERE  (comment_id =2) AND onoff = 'True' AND shop_sortID=@sid";
            cmd.CommandText = sql;
            cmd.Connection = conn;
            cmd.Parameters.AddWithValue("@sid", sortID);
            int count = 0;
            using (conn)
            {
                conn.Open();
                using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleResult))
                {
                    while (dr.Read())
                    {
                        if (count >= startRowIndex - 1)
                        {
                            if (shop_news.Count < maximumRows)
                            {
                                m_shop_free m = new m_shop_free();
                                m.id = (int)dr["id"];
                                m.shopID = (int)dr["shopID"];
                                m.comment_id = (int)dr["comment_id"];
                                m.infor_title = dr["infor_title"].ToString();
                                m.shopName = dr["shopName"].ToString();
                                m.addTime = (DateTime)dr["addTime"];
                                m.overTime = (DateTime)dr["overTime"];
                                m.infor_memo = dr["infor_memo"].ToString();
                                m.shop_sortID = int.Parse(dr["shop_sortID"].ToString());
                                m.proSort_id = (int)dr["proSort_id"];
                                m.pic = dr["pic"].ToString();
                                m.stitle = dr["stitle"].ToString();
                                m.cate_title = dr["cate_title"].ToString();
                                shop_news.Add(m);
                            }
                        }
                        count += 1;
                    }
                }
            }
            return shop_news;
        }


*************************************************************
startRowIndex 就是AspNetPager1.StartRecordIndex
maximumRows  就是  AspNetPager1.PageSize --------------------编程问答--------------------
引用 8 楼 wuyq11 的回复:
直接绑定List<T>,其他一样使用


lz晕了 --------------------编程问答-------------------- AspNetPager实际和分页没有任何关系,他只是一个ui显示效果

而分页本身是list<T>.skip(x).take(y)完成滴
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,