Я использую асинхронный процесс для извлечения данных из долгого SQL-запроса. Процесс вызывает хранимую процедуру с помощью метода SqlCommand.BeginExecuteReader()
.Изящно завершить длинный запрос SQL Server из ADO.NET
Временами я хотел бы закрыть свой процесс и изящно завершить любые запущенные запросы.
После некоторых испытаний кажется, что достаточно позвонить SqlConnection.Close()
. Для хорошей меры я также прямо звоню SqlConnection.Dispose()
.
При выполнении трассировки через SQL Server Profiler, появляется, как если запрос закончился изящно, как я вижу SQL:BatchStarting
с последующим SQL:BatchCompleted
после вызова Close()
.
Может ли кто-нибудь подтвердить, что закрытие соединения - это все, что требуется?