LINQ + AspNetPager + GridView 分頁控件

aspx頁面

 <asp:GridView ID="gvUser"  runat="server">
    </asp:GridView><br />
        <webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="15"  onpagechanged="AspNetPager1_PageChanged">
        </webdiyer:AspNetPager>

cs文件代碼:
protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindUser(true);
        }
    }

 protected void BindUser(bool reloadRecordCount)
    {
        using (DataClassesDataContext myData = new DataClassesDataContext())
        {
            var allSearch = from logoinfo1 in myData.logoinfo select logoinfo1;
            if (reloadRecordCount)
            {
                AspNetPager1.RecordCount = allSearch.Count();
            }
            gvUser.DataSource = allSearch.Skip((AspNetPager1.CurrentPageIndex - 1) * AspNetPager1.PageSize).Take(AspNetPager1.PageSize);
            gvUser.DataBind();
        }
    }

 protected void AspNetPager1_PageChanged(object sender, EventArgs e)
    {
        BindUser(false);
    }

只要只寫Pager_PageChanged的方法
//分頁,使用LINQ 來讀取分頁數據是很方便的
            GridView1.DataSource = allSearch.Skip((Pager.CurrentPageIndex - 1) * Pager.PageSize).Take(Pager.PageSize);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章