with sqlconnection you can use transactions and transaction areas, for example:
using(var scope = new TransactionScope()) {
you need to enable msdtc service for this.
take a look at http://valueinjecter.codeplex.com/ , on the data access level page where I display this
source share