I'm confused about this.
I have a c# ado.net application that opens a connection and begins a transaction.
It calls into a sproc that saves a new row.
I can see that new row outside the app if I query with (nolock). Fine.
I stick a breakpoint on the commit and before allowing it to execute abort the debugger.
What I want is for the transaction to roll back if the application were to abort before it explicitly commits the transaction. The whole idea of a transaciton IMO is that it should not be committed until all related logic is successful and the calling app is the judge of that.