Instructions
Check the machine.config file(s) in your Entity Framework folder(s) (C:\Windows\Microsoft.NET\Framework\VersionNumber(s)). If it contains the below code, comment it out, and try running NORMS again.
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342"/> <oracle.manageddataaccess.client> <version number="*"> <settings> <setting name="NAMES.DIRECTORY_PATH" value="TNSNAMES"/> </settings><dataSources> <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) "/> </dataSources> </version> </oracle.manageddataaccess.client>
Verify the machine.config files in C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config, and C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config.
I had
Version=4.122.18.3
in theWeb.config
andVersion=4.122.21.1
in themachine.config
.I updated the version, replaced
Version=4.122.18.3
ofWeb.config
toVersion=4.122.21.1
andoracle.manageddataaccess.client with 4.122.21.1
in both themachine.config
, and the issue was resolved.
Note: If you have an error to debug the app, verify the configurations below
1) Provider <configuration> <providers> <provider invariantName="Oracle.ManagedDataAccess.Client" type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" /> </providers> </configuration> 2) Configuration Section Handler The following entry is added to the app/web.config to enable applications to add an <oracle.manageddataaccess.client> section for ODP.NET, Managed Driver-specific configuration: <configuration> <configSections> <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" /> </configSections> </configuration> 3) DbProviderFactories The following entry is added for applications that use DbProviderFactories and DbProviderFactory classes. Also, any DbProviderFactories entry for "Oracle.ManagedDataAccess.Client" in the machine.config will be ignored with the following entry: <configuration> <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.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" /> </DbProviderFactories> </system.data> </configuration> 4) Dependent Assembly <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <publisherPolicy apply="no" /> <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" /> <bindingRedirect oldVersion="4.122.0.0 - 4.65535.65535.65535" newVersion="4.122.21.1" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration> 5) Data Sources <configuration> <oracle.manageddataaccess.client> <version number="*"> <dataSources> <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " /> </dataSources> </version> </oracle.manageddataaccess.client> </configuration>
Reference: https://stackoverflow.com/questions/33312848/oracle-odp-net-error
If after doing these fixes, NORMS runs but has nothing appear on the actual webpage, please see this article: How to Fix NORMS When It Displays Nothing When Running Locally
0 Comments