How to get NORMS running locally if there are Oracle issues
Instructions
Completely uninstall and reinstall oracle 12c. The installer we used was from the zip folder in \\TC4S0A\GROUPS\AARA\AARAD\Software Library\Developer Tools\Oracle, followed a standard installation, except for not installing any VS dev tools, and installed it system-wide.
Unconfigure Oracle’s GAC with the attached bat file (This is now in the \\Tc4s0a\groups\AARA\AARAD\NORMS folder)
Installed the latest ODT from Oracle’s website
If you are experiencing this issue after the above steps, 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