只有在代码中使用了TransactionScope时,我才会得到这个错误。没有TransactionScope,它对我来说工作得很好。
这是一个使用实体框架连接Oracle数据库的ASP.NET应用程序。详细信息如下。
<configSections> <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<connectionStrings>
<add name="MyEntities" connectionString="metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=Oracle.ManagedDataAccess.Client;provider connection string="DATA SOURCE=(DESCRIPTION=(ADDRESS = (PROTOCOL
= TCP)(HOST = <>)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = <>)));PASSWORD=<>;PERSIST SECURITY INFO=True;USER ID=<>"" providerName="System.Data.EntityClient" /> </connectionStrings>Exception = The type initializer for 'OracleInternal.MTS.DTCPSPEManager' threw an exception.
InnerException = {"Could not load file or assembly 'Oracle.ManagedDataAccessDTC, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.":"Oracle.ManagedDataAccessDTC, Version=4.121.2.0, Cul...
堆栈跟踪at OracleInternal.MTS.DTCPSPEManager..ctor(OracleConnectionImpl connImpl, Transaction txn, MTSTxnRM txnRM, MTSTxnBranch txnBranch) at OracleInternal.MTS.PSPEManager.Create(OracleConnectionImpl connImpl, Transaction txn, MTSTxnRM txnRM, MTSTxnBranch txnBranch) at OracleInternal.MTS.MTSRMManager.EnlistTransaction(OracleConnectionImpl connImpl, Transaction transaction, MTSTxnRM txnRM, MTSTxnBranch txnBranch) at OracleInternal.MTS.MTSRMManager.EnlistTransaction(OracleConnectionImpl connImpl, Transaction transaction) at OracleInternal.ConnectionPool.PoolManager3.GetEnlisted(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp) at OracleInternal.ConnectionPool.OracleConnectionDispenser3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword) at Oracle.ManagedDataAccess.Client.OracleConnection.Open()
请帮我解决这个问题。提前谢谢。
发布于 2015-06-21 14:03:59
我将Oracle.ManagedDataAccessDTC.dll复制到了bin文件夹中,这样就可以解决这个问题。
E:\app\client\<user>\product\12.1.0\client_1\odp.net\managed\x86\Oracle.ManagedDataAccessDTC.dll谢谢。
发布于 2019-07-08 16:42:01
在我的例子中(没有EF)将.net框架4.5更新到4.5.2解决了这个问题。没有额外的dll,所有的工作都很好。
https://stackoverflow.com/questions/30961508
复制相似问题