0

我有一个带有 sql 数据源的 gridview。我有近 35000 条记录被填充到表中。这通常会在从服务器加载时挂起系统。

有没有办法从网格视图或数据源一次获得有限数量的结果。

类似于它首先加载前 1000 个结果..一旦用户完成这些结果,然后它会自动加载下一个 1000 个结果。我尝试使用缓存...

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString=""           SelectCommand="SELECT * FROM [Table1]" EnableCaching="true" CacheDuration="3000" >

我假设这会缓存数据,并且所有其他 sql 查询都保留在缓存本地,而不是转到数据库。但是当我刷新页面时,它会再次加载所有记录并花费相同的时间(一分钟)。所以这就是为什么我需要先加载前 1000 条记录之类的东西。

4

2 回答 2

0

为您的 gridview 启用分页并指定页面大小属性

AllowPaging="true" 
PageSize="100"

你的 gridview 在 aspx 页面中应该是这样的

<asp:GridView runat="server" AllowPaging="true" PageSize="100"
于 2012-04-20T20:06:45.857 回答
0

您可以根据 GridView 页面大小设计您的查询。假设您在 Gridview 的第 1 页,并且页面大小设置为 100。然后只需从数据库中选择前 100 条记录。

于 2012-04-19T04:38:27.783 回答