У меня есть приложение Winforms, созданное в Visual Studio 2005 Pro, оно подключается к базе данных SQL Server 2005, используя классы SqlConnection / SqlCommand / SqlDataAdapter для извлечения данных. Я сохранил процедуры в своей базе данных, чтобы вернуть мне данные.
Каков наилучший способ обработки запросов, выполнение которых занимает «много времени»? (то есть достаточно долго, чтобы пользователь начал думать, что что-то не так). В настоящее время мое приложение блокируется до тех пор, пока запрос не будет завершен или не истечет время ожидания запроса. Очевидно, это недопустимо.
Я бы по крайней мере хотел бы индикатор прогресса с кнопкой "стоп" на нем. Измеритель прогресса даже не должен делать ничего полезного, достаточно намека на терпение и ожидание.
Еще лучше было бы предупреждение, в котором говорилось бы что-то вроде: «Это вернет 140 000 строк данных. Вы хотите продолжить?»
Я знаю, что это, вероятно, требует темы, но как?