0
我們遇到的問題是,在不應該交易的情況下,它們被提升爲分佈式交易。我們正在使用實體框架4.1和TransactionScope的一個WCF服務:將交易提升爲在實體框架中分佈
[OperationBehavior(TransactionScopeRequired = true)]
[TransactionFlow(TransactionFlowOption.Allowed)]
public void SetCapLength(Guid orderId, int capLength){}
一個ObjectContext的實例爲每個服務請求創建只有一個整個請求中被使用。
我們正在使用SQL Server 2008 R2。
對分佈式事務的推廣看起來非常隨意。
任何人都知道什麼會導致E.F.促進我們的交易?
啊,[TransactionFlow(TransactionFlowOption.Allowed)]可能有點無意。我們有一個不創建任何交易的Silverlight客戶端。我可以刪除它,但我不確定這是問題所在? – Poppert 2012-04-02 09:59:20
沒有Silverlight的情況下,它不會是一個問題。它是否隨時或隨機發生在特定操作上?你有沒有訪問任何其他交易資源? – 2012-04-02 10:25:22
這是非常隨機的。我們還沒有找到任何模式,不能真正重現它。有時它只是發生。不,我們不訪問其他交易資源。有時候服務會調用另一個服務,但是這些服務也沒有配置爲流動事務。 – Poppert 2012-04-02 14:01:50