NServiceBus.Azure и EF SqlAzureExecutionStrategy

Конфигурирах Entity Framework да използва SqlAzureExecutionStrategy. Сега моите манипулатори на NServiceBus се провалят със следната грешка:

NServiceBus.Unicast.Transport.TransportReceiver: Неуспешно обработване на съобщение System.InvalidOperationException: Конфигурираната стратегия за изпълнение „SqlAzureExecutionStrategy“ не поддържа инициирани от потребител транзакции

Доколкото разбирам, NServiceBus по подразбиране обгръща моя код на манипулатора в транзакция. Ако е вярно, как мога да го деактивирам? Или единственият начин да разрешите това е да се откажете от използването на SqlAzureExecutionStrategy?


person SoftwareFactor    schedule 20.05.2014    source източник


Отговори (1)


Можете да опитате това:

Configure.Transactions.Advanced(s => { s.DisableDistributedTransactions(); // деактивира транзакцията при получаване s.DoNotWrapHandlersExecutionInATransactionScope(); // деактивира транзакциите на бизнес логиката });

person Yves Goeleven    schedule 21.05.2014
comment
Предполагам, че аналогът на NServiceBus 5.0 за това е configuration.Transactions().DisableDistributedTransactions(); но това не предотвратява това изключение в моята WorkerRole. - person Adrian Anttila; 03.02.2015