2015-01-29 2 views
0

У меня есть большой оператор SELECT, и для отображения информации требуется некоторое время.Справочный рабочий для большого SQL-запроса

Я хочу знать, можно ли запускать инструкцию SELECT (или любой SQL-запрос, если на то пошло) на рабочем столе в C# и показывать «что-то» пользователю, чтобы они знали, что программа работает, и они должны Подождите. Что-то вроде: http://linux.m2osw.com/sites/linux.m2osw.com/files/images/waiting-wheel-300x300.gif

Возможно ли запустить запрос и показать что-то похожее на это .gif, пока запрос был запущен на фоне? Или мне нужно просто сменить курсор на «Подождите» до того, как он выполнит запрос и затем изменит его?

.NET Framework 3.5.

спасибо.

PD: Я не прошу вас сделать это за меня, я просто спрашиваю, можно ли это сделать и насколько сложным было бы.

+0

Ai ... слишком плохо вы на 3.5. Это отличный случай для всех методов -Async в EF6. –

+1

Предполагая, что запрос выполняется через хранимый процесс, вы можете вызвать его в потоке пользовательского интерфейса и делегировать контроль выполнения, чтобы обновить пользователя со статусом –

+0

. Какое приложение вы вообще говорите? Веб-приложение или что-то еще? –

ответ

1

Вы можете использовать метод SQLCommand.BeginExecuteReader. Вы создаете ссылку на метод AsynchCallback для обработки вещей, когда поток выполняется обработкой запроса. См

http://msdn.microsoft.com/en-us/library/7szdt0kc.aspx

+0

¡О, хорошо! Спасибо. – soulblazer

Смежные вопросы