Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle.DataAccess não disponível para seleção no Visual Studio 2013


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:

  1. Em Add References use o Browse seção e localize Oracle.DataAccess.dll manualmente. Normalmente, você o encontrará na pasta %ORACLE_HOME%\odp.net\bin\2.x\ ou %ORACLE_HOME%\odp.net\bin\4\

  2. 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 como Version=... ou processorArchitecture=... não são necessários. Seu aplicativo carregará o Oracle.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)

  3. 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

  4. 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.

  5. Abra o editor do Registro e verifique se RegKey HKLM\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 seu Oracle.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"
    

  6. 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.