从数据库中检索记录的最佳方法是什么? 目前我们正在抓取所有这些,缓存它们,并将它们绑定到我们的GridView控件。我们使用此控件合并分页。 那会更好吗?检索我们当前正在执行的所有记录,或者仅使用索引和行计数检索所需的记录。
答案 0 :(得分:1)
这取决于您所谈论的数据量。几十到几百,你目前的解决方案可能就足够了。开始进入数百到数千,您可能希望在SQL 2005中查看使用新内容的分页,如Row_Number和Rowcount功能。
这是一个小小的尝试: http://www.asp.net/LEARN/data-access/tutorial-25-cs.aspx
有几种方法可以做到这一点,但这应该让你开始至少考虑你应该做什么。
您甚至可以考虑使用Top语法IF来限制返回多少记录当然您正在使用SQL Server。我们之前已经完成了这项工作,并告知用户如果达到最大结果数,则会优化他们的搜索。
您可以使用上面的SQL 2005功能快速测试,看看您的性能如何做,并从那里做出决定。
答案 1 :(得分:0)
就像klabranche所说,这取决于你所谈论的行数。对于几百个,你的方法可能很好。
如果您谈论的是数千个,那么一个选项就是使用ASP ObjectDataSource。它允许您指定用于获取当前页面的行数和实际行的单独方法:
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.objectdatasource.aspx