簡體   English   中英

EnterpriseServicesInteropOption,NHibernate和Win7的問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM