我的表有大量记录绑定到Gridview。目前它在页面加载时绑定所有数据。我正在使用LINQ to SQL:
gvView.datasource = from c in _db.tblCategories
where c.bIsDeleted == false
select c;
gvView.databind();
我想通过分页转换它,以便它不会同时显示所有数据。
答案 0 :(得分:1)
您需要使用skip
并采用linq
方法。
请点击此链接,例如http://msdn.microsoft.com/en-us/library/bb386988.aspx
以下是一个示例,但请仔细阅读链接
var custQuery2 =
(from cust in db.Customers
orderby cust.ContactName
select cust)
.Skip((currentpagenumber-1)*pagesize).Take(pagesize);
要使用上述代码,您需要更改方法。您需要根据用户的选择确定当前页码和大小,执行此代码并将其重新绑定到gridview。
答案 1 :(得分:0)
.CS代码
gvView.datasource = (from c in _db.tblCategories
where c.bIsDeleted == false
select c).ToList();
gvView.databind();
。GridView的ASPX代码:
<asp:GridView ID="gvView" runat="server" AutoGenerateColumns="false" AllowPaging="true"
OnPageIndexChanging="OnPageIndexChanging" PageSize="10">
<Columns>
<asp:BoundField ItemStyle-Width="150px" DataField="myField1" HeaderText="myField1" />
</Columns>
</asp:GridView>
请参阅This了解GridView Pagination。