在IIS 8.5(AWS)中设置.net站点

时间:2017-02-07 12:53:44

标签: asp.net oracle iis-8.5 odac

我的.net项目(任何CPU)指的是Oracle.dataaccess x86版本。在我当地的GAC中,odac版本是x86。但是之前安装它的Web服务器在GAC中使用了AMB64版本的odac。该网站没有任何问题。现在我需要将站点移动到AWS.AWS中的Windows实例具有以下配置。

  • 操作系统版本:Microsoft Windows Server 2012 R2 Standard。

  • IIS 8.5

服务器很干净,没有安装任何软件。

当我尝试创建一个站点时,我最终看到**无法加载文件或汇编其依赖项**。通过论坛,我安装了Oracle的各种库,但我不明白所需的确切步骤是什么。我只是在做反复试验。

请告诉我要安装的软件或步骤,以便连接到其Oracle数据库的.net站点正常工作。

编辑1:

嗨,

我执行了以下步骤。

  1. 根据您的建议,我添加了Oracle.managedDataaccess dll(x86)。它在我当地很好用。
  2. 在服务器中部署相同的代码。
  3. 我安装了oracle_12.1.0.1.0
  4. 在C:/oracle_12.1.0.1.0/odp.net/managed/x86中,我运行了bat文件,用于在服务器中配置托管的odac。我能够看到machine.config文件中的更改。 5.现在我运行网站时出现以下错误。
  5.   

    System.Reflection.TargetInvocationException:抛出了异常   通过调用的目标。 --->   System.TypeInitializationException:类型初始值设定项   'Oracle.DataAccess.Client.OracleClientFactory'引发了一个异常。   ---> System.DllNotFoundException:无法加载DLL'OraOps12.dll':找不到指定的模块。 (HRESULT的例外情况:   0x8007007E)at   Oracle.DataAccess.Client.OpsInit.CheckVersionCompatibility(字符串   在Oracle.DataAccess.Client.OracleInit.Initialize()处于   Oracle.DataAccess.Client.OracleClientFactory..cctor()---结尾   内部异常堆栈跟踪--- ---内部异常堆栈结束   trace --- at System.RuntimeFieldHandle.GetValue(RtFieldInfo field,   对象实例,RuntimeType fieldType,RuntimeType declaringType,   布尔和放大器; domainInitialized)at   System.Reflection.RtFieldInfo.UnsafeGetValue(Object obj)at   System.Reflection.RtFieldInfo.GetValue(Object obj)at   System.Data.Common.DbProviderFactories.GetFactory(DataRow providerRow)   在   System.Data.Entity.Internal.LazyInternalConnection.CreateConnectionFromProviderName(字符串   providerInvariantName)at   System.Data.Entity.Internal.LazyInternalConnection.InitializeFromConnectionStringSetting(ConnectionStringSettings   appConfigConnection)at   System.Data.Entity.Internal.LazyInternalConnection.TryInitializeFromAppConfig(字符串   name,AppConfig config)at   System.Data.Entity.Internal.LazyInternalConnection.Initialize()at   System.Data.Entity.Internal.LazyInternalConnection.get_Connection()
      在Sample.Data.AbstractEFUnitOfWork 2.SetClientId(String clientId)
    at Sample.Web.Controllers.ApiControllerBase
    1..ctor(IUow uow,   IConnectionManager cm,IEnumerable`1 allowedAppUserbases,String   connectionName,Boolean allowSaves)

    为了解决这个问题,我将c:/oracle_12.1.0.1.0/bin中的OraOps12 dll添加到了wwwroot / site / bin文件夹中。然后我得到了以下错误。

      

    System.ArgumentException:无法找到请求的.Net Framework   数据提供者。它可能没有安装。在   System.Data.Common.DbProviderFactories.GetFactory(字符串   providerInvariantName)at   System.Data.Entity.Internal.LazyInternalConnection.CreateConnectionFromProviderName(字符串   providerInvariantName)at   System.Data.Entity.Internal.LazyInternalConnection.InitializeFromConnectionStringSetting(ConnectionStringSettings   appConfigConnection)at   System.Data.Entity.Internal.LazyInternalConnection.TryInitializeFromAppConfig(字符串   name,AppConfig config)at   System.Data.Entity.Internal.LazyInternalConnection.Initialize()at   System.Data.Entity.Internal.LazyInternalConnection.get_Connection()
      在Sample.Data.AbstractEFUnitOfWork 2.SetClientId(String clientId)
    at Sample.Web.Controllers.ApiControllerBase
    1..ctor(IUow uow,   IConnectionManager cm,IEnumerable`1 allowedAppUserbases,String   connectionName,Boolean allowSaves)

    检查解决此问题。 感谢您的建议。

0 个答案:

没有答案