且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

面向.NET 4.7.2的ASP.NET Core上的ODP.NET和EF6配置

更新时间:2023-02-15 20:36:26

要关联Oracle Provider:

To associate the Oracle Provider:

使用MVC5中web.config中的值更新add.config:

Update add.config with the values that were in web.config from MVC5:

<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342" />
  </configSections>
  <runtime>
    <gcServer enabled="true"/>
  </runtime>
  <entityFramework>
    <providers>
      <provider invariantName="Oracle.ManagedDataAccess.Client" type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342" />
    </providers>
  </entityFramework>
  <system.data>
    <DbProviderFactories>
      <remove invariant="Oracle.ManagedDataAccess.Client" />
      <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342" />
    </DbProviderFactories>
  </system.data>
  <oracle.manageddataaccess.client>
    <version number="*">
     <dataSources></dataSources>
    </version>
  </oracle.manageddataaccess.client>
</configuration>

然后在startup.cs中的services.AddMvc()之后添加:

Then add after the services.AddMvc() in startup.cs:

services.AddScoped(provider =>
            {
                return new OracleDbContext(Configuration["ConnectionString"]);
            });

贷记到 Tony Sneed Post .