Em seu
*.csproj , resp. *.vbproj edite sua referência ao ODP.NET assim: <Reference Include="Oracle.DataAccess">
<SpecificVersion>False</SpecificVersion>
<Private>False</Private>
</Reference>
Atributos como
Version=... ou processorArchitecture=... não são necessários. Seu aplicativo carregará o Oracle.DataAccess.dll correto dependendo da arquitetura selecionada e da estrutura .NET de destino (desde que esteja instalada corretamente) No entanto, você se refere a
OracleClient.dll que é o provedor de dados da Microsoft obsoleto (Oracle e ADO.NET
), mas então você escreve a versão 4.112.4.0 e 2.112.4.0 que é o Oracle Data Provider (ODP.NET, Oracle.DataAccess.dll ). Em algum lugar você mistura tudo. Qual é a versão de destino do Framework que você selecionou? Quando você definir 4.0 ou 4.5 ou 4.5.1, ele tentará carregar o Oracle dll versão 4.x. Para usar a versão 2.x, você deve definir a estrutura de destino 2.0, 3.0 ou 3.5