[英]Problems with EnterpriseServicesInteropOption, NHibernate and Win7
我有一個應用程序開發框架2.0,NHibernate和Oracle。 在Win Server 2003/2008和Win XP中一切正常,但是我將SO Win XP更改為Win 7,問題開始出現。 我所有的事務都停止了工作,僅使用EnterpriseServicesInteropOption.Full進行操作。
我沒有任何想法在Win 7中需要做哪些配置,因為Win XP可以工作。
在一段代碼下面,當保存對象時,我收到一個OracleException:
Oracle.DataAccess.Client.OracleException無法注冊分布式事務
TransactionOptions options = new TransactionOptions();
options.Timeout = new TimeSpan(0, 5, 0);
options.IsolationLevel = IsolationLevel.ReadCommitted;
using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options, EnterpriseServicesInteropOption.Full))
{
// Problems here
classDao.Save(class);
scope.Complete();
}
如果需要, TransactionScope
將打開一個分布式事務。
分布式事務需要msdtc在服務器上運行!
您可以通過執行以下操作( 從此處獲取 )來檢查其是否正在運行
您需要檢查msdtc服務是否正在運行(默認情況下已禁用)。 打開命令提示符(admin)並運行:net start msdtc。 接下來,您需要配置msdtc以允許網絡事務, 運行-> comexp.msc然后向下挖掘,直到到達Distributed Transaction Coordinator,右鍵單擊Local DTC並選擇屬性。 轉到“安全性”選項卡,然后啟用網絡事務和XA事務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.