В своем приложении я использую следующий шаблон для вызова БД:
//do a transaction
using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required))
{
OperationOnDb1();
//when we open the connection to the “other db” in this call, the transaction would become distributed
OperationOnDb2();
//transaction is now distributed
transaction.Complete();
}
Проблема в том, что Операция1 и Операция2 90% времени используют одну и ту же БД... но бывают случаи (баги) когда они используют две БД. Я хочу получить исключение, если транзакция станет распределенной.
Как я могу определить, повышена ли транзакция до распределенной транзакции?
Спасибо, Раду.