Просмотр страниц в Asp.net без записи всех записей в памяти - PullRequest
1 голос
/ 10 ноября 2010

На моей странице asp.net у меня есть просмотр списка, в котором есть база данных, определенная в шаблоне LayoutTemplate.Представление списка привязано к списку записей.Я знаю общее количество записей ... но я не загружаю их из БД.Я хочу, чтобы пейджер сначала запросил общее количество записей и позволил ему генерировать страницы и навигацию.Когда пользователь щелкает страницу из пейджера данных, я хочу загрузить записи из базы данных и обновить привязку просмотра списка, чтобы отобразить результаты с этой страницы.

Возможно ли это с помощью списка и datapager из asp.net?

Спасибо, Раду

Ответы [ 3 ]

2 голосов
/ 10 ноября 2010

Вы можете поддерживать пейджер отдельно от списка. Метод DataPager SetPageProperties будет вам полезен здесь. Затем вы можете установить источник данных вашего списка для соответствующей «страницы» записей БД во время OnDataBinding или Page_Prerender (в зависимости от того, как вы хотите обрабатывать события обратной передачи).

0 голосов
/ 12 ноября 2010

После дополнительных исследований я нашел эту статью, в которой описывается, как кэшировать данные и использовать их с ObjectDataSource.Возможно, вы все это знаете ... но я новичок в asp.net.

Кэширование данных в Asp.net

0 голосов
/ 10 ноября 2010

Невозможно использовать только эти элементы управления. Однако вы можете написать собственный код в обработчиках событий этих элементов управления, чтобы делать то, что вы хотите.

По моему опыту, лучший способ сделать это - через сохраненный процесс на стороне базы данных, который принимает параметр startIndex и параметр pageSize и возвращает только те результаты, которые вы хотите. (Конечно, параметры могут отличаться от того, что я написал, но вы поняли)

...