powered by simpleCommunicator - 2.0.34     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Пэйджинг, поиск - вопросы к знатокам
4 сообщений из 4, страница 1 из 1
Пэйджинг, поиск - вопросы к знатокам
    #32033871
Sergey Makarov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.
Мне нужно реализовать довольно сложный поиск по бызе данных - скажем найти все компании по куче параметров, отсортированной по возростанию - далее выводить результат поиска постранично (причем в зависимости от желаемой пользователем сортировки)- список скажем первых 25 компаний, а ниже эдакий "постраничный индекс результата поиска" -
Компания А - Компания Д
Компания Е - Компания Ж
....
и т.д.

(первая компания на первой странице - последняя компания на первой странице) и т.д.

Сейчас все это реализовано только хранимыми процедурами MS SQL - и у меня большие сомнения, что это самый эффективный способ - поскольку данные ищутся - потом записываются во временную таблицу - потом "пэйждингуются", причем дважды - для конкретной страницы и для списка страниц. по счелчку на другую страницу - снова вызывается тоже самый поиск (что есть совсем не хорошо) и возвращаются данные для этой страницы. Счедчек на другой страницу - опять то же самое - т.е совсем совсем неэффективно.

Теперь о том чего бы хотелось достичь
1. Разбиение на страницы с учетом сортировки делать средствами ADO.NET - мне почему-то кажется - что это будет эффективнее чем динамические запросы и временные таблицы на стороне SQL сервера.
2. Поиск проводить один раз, где то хранить результаты и использовать их при переходе со страницы на страницу.
К примеру - еше будет нобходимо реализовать следующую возможность - кликнуть по компании - показать на странице детальную информацию и пару кнопок - "предыдущая" и "следующая". Такой подход очень часто можно встретить к примеру на job сайтах - совершенно понятно, что поиск в этом случае делается один раз, результат храниться каким-то образом на сервере и используется для навигации в произвольном направлении.

Буду признателен за любые идеи и советы.
И еще, просветите как работает встроенный пэйджинг в DataGrid и можно ли его использовать для моей задачи - я имею ввиду не список страниц - 1,2,3....
а список компаний (1я - последняя на странице) ?

Спасибо.
...
Рейтинг: 0 / 0
Пэйджинг, поиск - вопросы к знатокам
    #32059722
vap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идея N2 более масштабируема.
Храните в промежуточной таблице
Id-строки где находится информация
Num - порядковый номер внутри выборки/поиска.
Time - Время создания выборки, для ее удаления если превысили TimeOut

Для перехода по страницам, можно можно использовать Id-выборки, поле Num и конструкцию TOP XXX, или SET ROWCOUNT
...
Рейтинг: 0 / 0
Пэйджинг, поиск - вопросы к знатокам
    #32068602
Фотография smeh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите пожалуйста,
меня как раз интересует как пользовать номера страниц 1,2,3,... в DataGrid.
А то че-то никак не раберусь, а очень надо.
У меня в форме просто ДатаГрид по 15 записей, как мне переключаться используя номера страниц?
...
Рейтинг: 0 / 0
Пэйджинг, поиск - вопросы к знатокам
    #32069094
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sergey Makarov

Я список алфавитный такой делал через фильтрацию, на стороне .net

По поводу хранения результата - его можно конечно хранить в кэше, но учтите, что поиск производится по многим параметрам, следовательно приделися хранить копии результатов по любой строке поиска - это невыгодно. Хотя можно, если ограничить 10 минутами жизни. Вот так вот.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Пэйджинг, поиск - вопросы к знатокам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]