Utilizo un proceso asíncrono para recuperar datos de una consulta SQL de larga ejecución. El proceso llama a un procedimiento almacenado a través del método SqlCommand.BeginExecuteReader()
.Concluir correctamente la consulta SQL Server de larga ejecución desde ADO.NET
A veces, me gustaría cerrar mi proceso y terminar con gracia cualquier consulta en ejecución.
Después de algunas pruebas, parece que llamar a SqlConnection.Close()
es suficiente. Para una buena medida, también llamo explícitamente al SqlConnection.Dispose()
.
Cuando se ejecuta una traza a través de SQL Server , parece como si la consulta se terminó gracia como veo un SQL:BatchStarting
seguido de un SQL:BatchCompleted
después de llamar Close()
.
¿Alguien puede confirmar si el cierre de la conexión es todo lo que se necesita?