.NET transaction management without TransactionScope

1.3k Views Asked by At

I was actively using TransactionScope in my application and was happy. But now I came to the situation where TransactionScope is not enough flexible: first of all, because I can't change IsolationLevel dynamically.

What is the easiest way to replace TransactionScope by database transaction which can be managed manually? One of the features I want to keep is the support of cross-connections transactions.

1

There are 1 best solutions below

5
On BEST ANSWER

I think that the conculsion is that you cannot do this: Have both a distributed transaction and change the isolation level.

You cannot change the isolation level of a transaction after it has started.

To use cross connection transactons you need to use transaction scope, or a COM+ transaction via enterprise services. In both cases you cannot change the isolation level after the transaction is created.

It is possible to to change the isolation level of a SQL connection using the "set transaction isolation level " SQL statement.