Asp.net listview分页没有havind内存中的所有记录

时间:2010-11-09 21:46:01

标签: .net asp.net listview pagination datapager

在我的asp.net页面中,我有一个listview,它在LayoutTemplate中定义了一个datapager。 listview被数据绑定到记录列表。我知道记录的总数......但是我没有从数据库中加载它们。我想在第一次请求时告诉寻呼机记录的总数,并让它生成页面和导航。当用户从数据仓单击页面时,我想从db加载记录并更新listview绑定以显示该页面的结果。

这可以通过asp.net的listview和datapager实现吗?

谢谢,Radu

3 个答案:

答案 0 :(得分:2)

您可以将分页器与列表视图分开维护。 DataPager的SetPageProperties方法对您有用。然后,您可以在OnDataBindingPage_Prerender期间将列表视图的数据源设置为DB记录的相应“页面”(取决于您希望如何处理回发事件)。

答案 1 :(得分:0)

仅使用这些控件是不可能的。但是,您可以在这些控件的事件处理程序中编写自定义代码,以执行您想要的操作。

根据我的经验,最好的方法是通过db端的存储过程获取startIndex参数和pageSize参数,并仅返回所需的结果。 (当然,参数可能与我写的不同,但你明白了)

答案 2 :(得分:0)

经过更多研究后,我发现这篇文章描述了如何缓存数据并将其与ObjectDataSource一起使用。可能你知道这一切......但我是asp.net的新手。

Caching data in Asp.net