Sim, o Visual Studio é um aplicativo de 32 bits.
Depende do seu destino de compilação (
x86
ou x64
ou AnyCPU
) qual Oracle Client você precisa para executar/depurar seu aplicativo, independentemente da arquitetura do Visual Studio. AnyCPU
será executado como 64 bits em um Windows de 64 bits (o que provavelmente é o caso) Oracle.DataAccess
não aparece porque é um assembly de 64 bits, mas seu Visual Studio é de 32 bits. Existem várias soluções:
-
EmAdd References
use oBrowse
seção e localizeOracle.DataAccess.dll
manualmente. Normalmente, você o encontrará na pasta%ORACLE_HOME%\odp.net\bin\2.x\
ou%ORACLE_HOME%\odp.net\bin\4\
-
Abra seu*.csproj
, resp.*.vbproj
arquivo com um editor de texto e adicione referência manualmente, ou seja, adicione linhas como esta no elemento<ItemGroup>
:
<Reference Include="Oracle.DataAccess"> <SpecificVersion>False</SpecificVersion> <Private>False</Private> </Reference>
Nota:atributos comoVersion=...
ouprocessorArchitecture=...
não são necessários. Seu aplicativo carregará oOracle.DataAccess.dll
correto dependendo da arquitetura selecionada e do framework .NET de destino (desde que esteja instalado corretamente - também em sua máquina de destino)
-
Instale o Oracle Client x86 e x64 em sua máquina. Aqui está uma instrução de como fazer isso:Stack Overflow - Instalar Oracle x86 e x64
-
Use o driver gerenciado ODP.NET da Oracle. Você pode baixá-lo aqui:Downloads do ODAC (Oracle Data Access Components) de 64 bits Isso também funciona com aplicativos de 32 bits.
-
Abra o editor do Registro e verifique se RegKeyHKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.NET
resp.HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.NET
existir. Ambas as RegKeys contêm apenas o(Default)
valor com a localização do seuOracle.DataAccess.dll
.
Exemplo:
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"
-
Verifique seu Framework de destino nas opções de compilação. Quando você tem o ODP.NET versão 4.x instalado, você deve selecionar o destino.NET Framework 4
ou superior para ver a entrada ODP.NET na lista de referência.