Ja, Visual Studio ist eine 32-Bit-Anwendung.
Dies hängt von Ihrem Kompilierungsziel ab (x86
oder x64
oder AnyCPU
) welchen Oracle-Client Sie zum Ausführen/Debuggen Ihrer Anwendung benötigen, unabhängig von der Architektur von Visual Studio.
AnyCPU
läuft als 64-Bit auf einem 64-Bit-Windows (was höchstwahrscheinlich der Fall ist)
Oracle.DataAccess
wird nicht angezeigt, da es sich um eine 64-Bit-Assembly handelt, Ihr Visual Studio jedoch 32-Bit ist.
Es gibt mehrere Lösungen:
-
In
Add References
Verwenden Sie dieBrowse
Abschnitt und suchen SieOracle.DataAccess.dll
manuell. Normalerweise finden Sie es im Ordner%ORACLE_HOME%\odp.net\bin\2.x\
oder%ORACLE_HOME%\odp.net\bin\4\
-
Öffnen Sie Ihre
*.csproj
, bzw.*.vbproj
Datei mit einem Texteditor und fügen Sie den Verweis manuell hinzu, d. h. fügen Sie Zeilen wie diese unter dem Element<ItemGroup>
hinzu :<Reference Include="Oracle.DataAccess"> <SpecificVersion>False</SpecificVersion> <Private>False</Private> </Reference>
Hinweis:Attribute wie
Version=...
oderprocessorArchitecture=...
sind nicht erforderlich. Ihre Anwendung lädt die richtigeOracle.DataAccess.dll
abhängig von der gewählten Architektur und dem Ziel-.NET-Framework (vorausgesetzt, es ist ordnungsgemäß installiert - auch auf Ihrem Zielcomputer) -
Installieren Sie sowohl den x86- als auch den x64-Oracle-Client auf Ihrem Computer. Hier ist eine Anleitung dazu:Stack Overflow - Install Oracle x86 and x64
-
Verwenden Sie den verwalteten ODP.NET-Treiber von Oracle. Sie können es hier herunterladen:64-Bit Oracle Data Access Components (ODAC) Downloads Dies funktioniert auch mit 32-Bit-Anwendungen.
-
Öffnen Sie Ihren Registrierungseditor und überprüfen Sie, ob RegKey
HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.NET
bzw.HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.NET
existieren. Beide RegKeys enthalten nur den(Default)
Wert mit dem Speicherort IhrerOracle.DataAccess.dll
.Beispiel:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.Net] @="c:\\oracle\\product\\11.2\\Client_x86\\odp.net\\bin\\2.x" [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.Net] @="c:\\oracle\\product\\11.2\\Client_x86\\odp.net\\bin\\4"
-
Überprüfen Sie Ihr Ziel-Framework in den Kompilierungsoptionen. Wenn Sie ODP.NET Version 4.x installiert haben, müssen Sie das Ziel
.NET Framework 4
auswählen oder höher, um den ODP.NET-Eintrag in der Referenzliste zu sehen.