sql >> Database >  >> RDS >> Oracle

Oracle.DataAccess.dll kan niet worden gevonden hoewel het bestaat

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.




  1. Hier zijn drie redenen waarom u piekactiviteit in uw SQL-instantie zou kunnen zien

  2. BOB met INSERT INTO via voorbereide verklaringen

  3. Hoe de functie JulianDay() werkt in SQLite

  4. Waarom crashte mijn MySQL-database? Krijg inzichten met het nieuwe MySQL Freeze Frame