public void Transactions_TransactionScope() { using (var tx = new TransactionScope()) { using (db.EnsureConnectionOpen()) { // Open connection if not open Transactions_DoWork(); tx.Complete(); } // Connection is closed if wasn't open } }