Asp.net 向客户端发送整个列表还是仅发送一页?

Asp.net 向客户端发送整个列表还是仅发送一页?,asp.net,performance,client-server,Asp.net,Performance,Client Server,我一直在从数据库和分页检索数据,它基于一个过滤器,该过滤器主要由客户端通过HttpPost发送。为了让自己尽可能清楚,我将举一个例子: 用户(客户端)打开客户搜索页面 服务器接收初始请求,并查询所有客户的列表,过滤前20个,仅将包含这20行的列表、页面索引和总行数返回给客户端 客户端接收20行、页面索引和行数。HTML的呈现方式是,根据行数,有一个表的页脚包含分页 一旦用户单击页脚上另一个页面的链接,服务器就会收到新的请求,并执行与以前相同的查询,但现在跳过前20个结果 到目前为止,性能是令人满

我一直在从数据库分页检索数据,它基于一个过滤器,该过滤器主要由客户端通过
HttpPost
发送。为了让自己尽可能清楚,我将举一个例子:

  • 用户(客户端)打开客户搜索页面
  • 服务器接收初始请求,并查询所有客户的列表,过滤前20个,仅将包含这20行的列表、页面索引和总行数返回给客户端
  • 客户端接收20行、页面索引和行数。
    HTML
    的呈现方式是,根据行数,有一个表的页脚包含分页
  • 一旦用户单击页脚上另一个页面的链接,服务器就会收到新的请求,并执行与以前相同的查询,但现在跳过前20个结果
  • 到目前为止,性能是令人满意的,而唯一的瓶颈是页面浏览可能会带来相当多的等待

    但现在它成了一个问题,因为我想实现一个在插入时更新的搜索。用户键入一个字符,然后过滤结果以匹配该文本框中包含的任何内容

    我能做些什么?我是否应该将整个收藏发送给客户


    在将数据传输到客户端之前,我是否通过分页实现了最佳的理论性能?

    尝试使用asp.net Gridview控件分页操作您只从数据库中提取客户请求的页面(记录限制),每当他请求新页面时,都会再次从数据库中提取页面

    将结果存储在会话或内存中完全取决于应用程序的运行方式。考虑到给定的用例,在数据库本身中应用分页

    谢谢