Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ASP.NET(使用VB.NET)中分页是如何工作的?_Asp.net_Vb.net_Datatable - Fatal编程技术网

在ASP.NET(使用VB.NET)中分页是如何工作的?

在ASP.NET(使用VB.NET)中分页是如何工作的?,asp.net,vb.net,datatable,Asp.net,Vb.net,Datatable,我知道如何创建和填充数据表,我已经完成了。现在,我只想在webform上显示datatable,但我还想知道如何对其进行分页和排序。最终,我不想将其绑定到datagrid或gridview。我想自己学习如何通过编程实现这一点 您能告诉我如何在不使用datagrid或gridview的情况下显示、分页和排序此datatable吗 谢谢大家! 首先,必须将数据存储到会话对象/viewstate/cache中 然后根据您的需求生成表/div,并对要在屏幕上显示的记录数*当前页码+1使用循环。(当前页码

我知道如何创建和填充数据表,我已经完成了。现在,我只想在webform上显示datatable,但我还想知道如何对其进行分页和排序。最终,我不想将其绑定到datagrid或gridview。我想自己学习如何通过编程实现这一点

您能告诉我如何在不使用datagrid或gridview的情况下显示、分页和排序此datatable吗


谢谢大家!

首先,必须将数据存储到会话对象/viewstate/cache中

然后根据您的需求生成表/div,并对要在屏幕上显示的记录数*当前页码+1使用循环。(当前页码必须存储在viewsate或隐藏字段中)

对于排序,使用标题上的链接(使用带有链接的表标题),然后使用Linq进行排序。 (对数据进行排序后,必须替换会话对象/viewstate/cache对象)
您可以使用列名生成标题,理想的分页是在数据库级别完成的。为此,您可以创建一个SP,该SP可能包含两个参数。一个参数是您希望在每个页面上显示的记录数,另一个参数是您的用户所在的页面数

例如,如果您的用户位于第1页,并且每页记录数为20,则从数据库中检索记录,其中行id为1到20。如果用户想查看第3页,则检索第41至60行。如果SQL表中没有uniqueidentifier,则必须在ROW_NUMBER()函数的帮助下使用内部查询。下面是使用SQL Server ROW_NUMBER()函数进行分页的链接

除此之外,您还可以组合排序。这可能是SP的第三个参数。您可以先以任何方式对数据进行排序,然后选择适当的页面