In case you do open a transaction using isolation level snapshot, make sure you do not disable connection pooling in the connection string (do not set 'Pooling=false'
).
Otherwise, opening a connection after you opened and closed another one, you will receive an exception telling the transaction cannot be extended.