Ja, Visual Studio er et 32-bit program.
Det afhænger af dit kompileringsmål (x86
eller x64
eller AnyCPU
) hvilken Oracle-klient du skal bruge til at køre/fejle din applikation, uanset arkitekturen fra Visual Studio.
AnyCPU
vil køre som 64 bit på en 64 bit Windows (hvilket højst sandsynligt er tilfældet)
Oracle.DataAccess
vises ikke, fordi det er en 64bit assembly, men dit Visual Studio er 32bit.
Der er flere løsninger:
-
I
Add References
brugBrowse
sektion og findOracle.DataAccess.dll
manuelt. Typisk vil du finde det i mappen%ORACLE_HOME%\odp.net\bin\2.x\
eller%ORACLE_HOME%\odp.net\bin\4\
-
Åbn din
*.csproj
, hhv.*.vbproj
fil med en teksteditor og tilføj reference manuelt, dvs. tilføj linjer som denne under elementet<ItemGroup>
:<Reference Include="Oracle.DataAccess"> <SpecificVersion>False</SpecificVersion> <Private>False</Private> </Reference>
Bemærk:attributter som
Version=...
ellerprocessorArchitecture=...
er ikke påkrævet. Din applikation indlæser den korrekteOracle.DataAccess.dll
afhængigt af valgt arkitektur og mål .NET framework (forudsat at det er installeret korrekt - også på din målmaskine) -
Installer både x86 og x64 Oracle Client på din maskine. Her er en instruktion, hvordan du gør dette:Stack Overflow - Installer Oracle x86 og x64
-
Brug ODP.NET Managed Driver fra Oracle. Du kan downloade det herfra:64-bit Oracle Data Access Components (ODAC)-downloads Dette fungerer også med 32-bit-applikationer.
-
Åbn din registreringseditor, og kontroller, om RegKey
HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.NET
hhv.HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.NET
eksisterer. Begge RegKeys indeholder kun(Default)
værdi med placeringen af dinOracle.DataAccess.dll
.Eksempel:
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"
-
Tjek dit målramme i kompileringsmuligheder. Når du har ODP.NET version 4.x installeret, skal du vælge mål
.NET Framework 4
eller højere for at se ODP.NET-indgangen i referencelisten.