如何显示数千条记录?

时间:2011-03-22 02:55:48

标签: c# sql sql-server performance

您好 假设我要为我的客户列出数千条记录。 我该如何实现呢?有人说我必须从数据库中检索300或400条记录并向客户端显示这些记录。但我认为分页会有一些问题。如果我从数据库中获取所有记录,那么我将遇到性能问题。有人说要实现我们自己的商店程序。我该怎么做?

由于

4 个答案:

答案 0 :(得分:1)

你肯定必须使用分页而不是一次检索所有记录,我建议使用一些ORM工具来抽象分页所需查询的复杂性,如果使用LINQ它会非常简单:... Skip( (您做生意-1)* pageSize的)。取(pageSize的)

答案 1 :(得分:1)

我赞成向页面发送~100条记录,通过JavaScript对它们进行分页,并在用户导航到卸载数据时,通过更高的数字(例如1000)批量检索更多记录。如果你不能强迫用户使用JavaScript,那么所有都没有脚本后备链接。

(不确定C#框架有多容易;使用Java的Wicket,这很容易。)

答案 2 :(得分:1)

记录记录!这将是唯一的解决方案(你尚未尝试过这种方式!)。您可以添加Button控件以在页面之间移动,以及在加载页面时加载到页面的数据。或者记录可以一次性加载并由应用程序存储,并在显示页面时向用户显示。

答案 3 :(得分:1)

分页肯定是对此的回答。但是 - 在SQL Stored Proc中进行所有匹配。而不是依赖于GridView默认分页......

如果您不想使用Paging(某些客户端非常坚定地显示所有记录),那么您可以使用Scroll事件动态获取记录。如果您使用Web应用程序,则可以通过传递pageNo,pagesize等来使用Ajax Call来获取下一组记录....