![]() |
|
Модераторы: gambit |
![]()
|
|
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: 3 Всего: 10 |
Доброго всем времени суток.
Есть актуальная задача - нужно постранично выводить данные из таблицы, но при этом желательно избежать ASP ого постбэка. Можно ли зделать листание как-нибуть без GridView? например усложнить Repeater. При этом можно выйти из ситуации , если на кажд страницу - делать селект из базы нужного количества строк, но получается избыточные коннекты к БД. Внимание вопрос! Можно ли настроить вывод определенного количества строк с помощью DataView, и уже его биндить к контролу, и потом менять только есвойства этого DataView, для листания? -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
| Mymik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
Для любого контрола можно сотворить постраничный вывод, с помощью класса PagedDataSource. Он как раз и принимает твой DataView.
http://aspnet.4guysfromrolla.com/articles/081804-1.aspx вот тут вот можешь посмотреть как народ реализовал уже данную штуку. Ну а если тебе надо выводить список страниц, тогда надо будет сделать руками. Если немного подумать, то там все очень просто. (Если не поймешь как -- напиши, я тебе там дам пример, я уже делал подобное для своего repeater) -------------------- |
|||
|
||||
| jeka_fox |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 13.4.2007 Репутация: нет Всего: нет |
Делал нечто подобное, но только не понравилась работа посредством стандартных способов предлагаемых asp net, в итоге свелось к написанию некой функции на сервере бд - принимающую номер части, размер части и быстренько все отдающую - вроде получилось, производительность - была камнем преткновения, ибо в "пейджируемой таблице" десятки мил записей, а темпы роста только усиливаются.
Вот пример - с точки зрения дизайна проблемы, но пейджинг не тормозит - сайт радикал-фото |
|||
|
||||
| Mymik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
jeka_fox, да, совершенно верно, такой механизм реализовывался и в asp:ObjectDataSource там тоже был метод который забирал только часть данных (которую нужно отображать) и дополнительный метод, который забирал общее количество записей соответствующих данному условию.
[offtop] Кстати да, с реализацией Paging для Repeater мне пришлось тоже реализовывать механизм ObjectDataSource (два отдельный метода) руками. В принципе это не так уж и страшно :о) там кодить совсем минимум. Но все равно не понравилось. [/offop] -------------------- |
|||
|
||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: 3 Всего: 10 |
to Mymik
спасибо за ссылку -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка под ASP.NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |