我已将Entity Framework配置为使用SqlAzureExecutionStrategy。现在我的NServiceBus处理程序失败并出现以下错误:
NServiceBus.Unicast.Transport.TransportReceiver:无法处理 message System.InvalidOperationException:已配置的执行 策略' SqlAzureExecutionStrategy'不支持用户启动 交易
据我所知,NServiceBus默认将我的处理程序代码包装在一个事务中。如果是真的,我该如何禁用它?或者是解决这个问题的唯一方法是放弃使用SqlAzureExecutionStrategy?
答案 0 :(得分:0)
你可以试试这个:
Configure.Transactions.Advanced(s => { s.DisableDistributedTransactions(); //在接收时禁用事务 s.DoNotWrapHandlersExecutionInATransactionScope(); //禁用业务逻辑上的事务 });