|
10 / 10 / 7
Регистрация: 17.05.2009
Сообщений: 140
|
|
Как лучше оптимизировать работу с данными БД13.01.2014, 11:05. Показов 1146. Ответов 7
Метки нет (Все метки)
Здравствуйте.
У меня в приложении есть функция работы с адресами из Кладр. Выглядит это как на скриншоте. Первоначально я хотел по событию textBox_TextChanged обращаться к бд (mysql) и в соответствии с введенными символами заполнять datagrid, но тут столкнулся с проблемой под тормаживания приложения из-за постоянной подгрузки данных. Для уменьшения количества данных - сделал уточняющие запросы, т.е. если выбран регион - то список районов загружаются только из этого региона и т.д. Но этого не хватает скажем для г. Москвы Затем я решил сделать при загрузке формы заполнение грида и уже производить поиск внутри него. Но тут тоже проблема есть - если производить поиск улиц по г. Москва, то необходимо первоначально загрузить около 4000 названий улиц. Грид получится великоват. Как лучше сделать поиск данных и их обработку из БД?
0
|
|
| 13.01.2014, 11:05 | |
|
Ответы с готовыми решениями:
7
Как лучше организовать работу Access с данными из разных файлов Excel Как лучше оптимизировать переменные Как лучше оптимизировать условие |
|
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
|
|
| 13.01.2014, 12:34 | |
|
дёргать бд при каждом новом символе совсем не хорошо. В гриде нужно показывать только то, что видет на данный момент юзер, если ему нужно видеть больше, он скроллит, данные подгружаются. Для этого у грида есть св-во VirtualMode
0
|
|
|
10 / 10 / 7
Регистрация: 17.05.2009
Сообщений: 140
|
|
| 13.01.2014, 13:12 [ТС] | |
|
Монфрид, Судя по всему это то, что нужно. Не могли бы подсказать как заполнить данными грид используя данный режим?
И еще как производить поиск по такому гриду? Если я правильно суть уловил, данные не хранятся в гриде а подгружаются по мере прорисовки (прокрутки скорола) ячеек. Как тут поиск организовать?
0
|
|
|
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
|
||||||
| 13.01.2014, 13:46 | ||||||
|
skynet80, я немножко соврал, написав что данные в этом режиме, при прокрутке должны подгружаться из бд. Сначала все необходимые выгружаются в какую то коллекцию, а грид уже берёт необходимое из неё, а не из бд.
вам нужно поставить virtualMode в true, потом подписаться на событие CellValueNeeded у грида:
Добавлено через 1 минуту а вот тут, как я понимаю как раз вариант в подгрузкой данных из бд
0
|
||||||
|
10 / 10 / 7
Регистрация: 17.05.2009
Сообщений: 140
|
|
| 13.01.2014, 14:46 [ТС] | |
|
Тут я более менее разобрался. Но пока не могу понять кок произвести поиск в гриде.
допустим грид на данный момент отображает столбец со строками: 1 2 3 смогу ли найти программно строку содержащую 4, которая не отображается в этом гриде? и вообще как ее найти? Нашел другой пример http://msdn.microsoft.com/ru-r... .110).aspx и что-то не пойму как он должен работать. у меня данные подгружаются только когда я в последнюю строку начинаю водить символы. тогда начинают подгружать символы. Я надеялся на другое.
0
|
|
|
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
|
|
| 13.01.2014, 15:23 | |
|
0
|
|
|
0 / 0 / 1
Регистрация: 12.01.2014
Сообщений: 33
|
||||||
| 14.01.2014, 05:05 | ||||||
|
Я решаю такие задачи таким образом...
Запускаю приложение. По какому либо событию запускаю в отдельном потоке загрузку данных в DataTable при этом отображаю признак(крутиться что-то или прогрессбар) что поток еще не отработал и блокирую допустим комбобокс. После загрузки данных с помощью Linq запроса выдергиваю данные из таблицы потом только гружу в грид. Добавлено через 3 минуты
0
|
||||||
|
|
|
| 14.01.2014, 07:31 | |
|
4000 записей с одним полем загрузить для вас затратно? Что-то совсем слабовато.
0
|
|
| 14.01.2014, 07:31 | |
|
Помогаю со студенческими работами здесь
8
Как ощутимо оптимизировать работу Windows 10 ? Как оптимизировать работу с несколькими DataGridView? Как ощутимо оптимизировать работу windows 7? Как оптимизировать работу с большими массивами изображений
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во
всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
|