De ODP.NET-installatie kan erg lastig zijn. Er zijn veel dingen die fout kunnen gaan:
- U kunt een versie hebben die niet overeenkomt (2.111.7.20 vs 2.112.1.0 vs. 2.112.2.0).
- U kunt een mismatch hebben tussen 32 en 64 bit.
- De .NET DLL bestaat mogelijk, maar een van de afhankelijkheden is niet gevonden.
Probeer eerst de 32/64 bit-mismatch te controleren. In IIS kunt u configureren of uw webtoepassing als 32- of 64-bits wordt uitgevoerd. Om dit te controleren, kijkt u in Taakbeheer en ziet u of het w3wp.exe-proces de *32
heeft markering. Ga dan naar C:\Windows\Assembly
in de bestandsverkenner. Het is een speciale weergave die de GAC weergeeft. Als er x86 staat in de laatste kolom op de rij Oracle.DataAccess, dan is het 32 bit. Als er AMD64 staat, dan is het 64 bit.
Op dezelfde regel vindt u ook het exacte versienummer. Controleer in VisualStudio of het ASP.NET-project dezelfde gebruikt.
Als ik me niet vergis, de belangrijkste afhankelijkheid van Oracle.DataAccess.dll
is OraOps11w.dll
, die beschikbaar zou moeten zijn in de BIN-directory van de Oracle-clientdirectory. Deze directory bevindt zich meestal via het register (HKLM\SOFTWARE\ORACLE\ODP.NET\<version>\DllPath
). Zorg ervoor dat je in het register kijkt naar de juiste bitness (32 vs 64 bit).
Er zijn meer dingen die weg kunnen. Maar deze hier lossen het probleem meestal op.