ObjectDataSource定义了两个方法
一个是获取分页数据的方法GetPageData
另一个是获取总条数的方法ScalarQuery
当我指定了搜索条件FilterExpression后,listview显示的数据是正确的,
但是页数还是按照没有条件时显示,也就是显示所有的页数,别没有受我的搜索条件影响
请问各位前辈,我还需要设置什么?
一个是获取分页数据的方法GetPageData
另一个是获取总条数的方法ScalarQuery
当我指定了搜索条件FilterExpression后,listview显示的数据是正确的,
但是页数还是按照没有条件时显示,也就是显示所有的页数,别没有受我的搜索条件影响
请问各位前辈,我还需要设置什么?
这里有两种方法:
一种是:Listview是不支持分页功能的。但可以结合控件DataPager对Listview进行分页,可以将DataPager控件添加到Listview控件的<LayoutTemplate></LayoutTemplate>中,或者放在ListView控件的外面,这里要注意将DataPager控件的PagedControlID属性值设为ListView的ID。
第二种是,在从数据库中读取信息时就分页读取。
假设你想从数据库中读取某一信息,并且按照某一列进行降序排序,我们可以这么做:
一:取出表中按某一列进行降序排序的前count行
SELECT TOP count * FROM [TABLE] WHERE [] ORDER BY [] DESC
二:取出这count行中后面的count1行,则可以这样写SELECT语句:
SELECT TOP count1 * FROM (SELECT TOP count * FROM [TABLE] WHERE [] ORDER BY [] DESC
) a ORDER BY [] ASC
三:取出的这count1行进行按某一列的降序排序,可以这么写:
SELECT * FROM (SELECT TOP count1 * FROM (SELECT TOP count * FROM [TABLE] WHERE [] ORDER BY [] DESC) a ORDER BY [] ASC) b ORDER BY [] DESC
这样就可以实现Listview的分页显示了。
我问的是datapager的页数怎么计算