Сервер будет незамедлительно откатывать любую незафиксированную транзакцию при закрытии сеанса.
Пул ADO отвечает за очистку любой незафиксированной транзакции перед возвратом транзакции в пул. Если вы удалите соединение с ожидающими транзакциями, оно будет отменено.
Транзакции могут быть запущены клиентом с помощью API-интерфейса ADO (SqlConnection.BeginTransaction) или путем выполнения оператора BEGIN TRANSACTION. Протокол TDS между клиентом и сервером имеет специальные токены, информирующие клиента о том, когда транзакция была запущена / зафиксирована таким образом, поэтому ADO знает, что соединение имеет ожидающие транзакции, даже если они запущены в коде T-SQL.