У меня большой набор данных (более 100 000 записей), который я хочу загрузить в DataGridView. Хранимая процедура, которая делает это, может занять 10 секунд или более.
На данный момент у меня есть BackgroundWorker, предотвращающий блокировку пользовательского интерфейса, и я реализовал элементарный диалог «Пожалуйста, подождите».
Что я хотел бы сделать, так это как-то заполнить DataGridView результатами, когда они каким-то образом будут возвращены из базы данных. Лучший способ описать это - то, как это делает SQL Server Management Studio - при выполнении запроса строки возвращаются немедленно, даже если запрос все еще выполняется. Также есть кнопка, чтобы остановить запрос и сохранить строки, которые были возвращены.
Как я могу сделать это в своем собственном коде?
DataGridView используется только для отображения строк данных, а затем пользователь щелкает один, чтобы сделать что-то еще. Ничего не записывается обратно в базу данных.