Ten eerste:de Oracle-client/provider is een puinhoop. En dat geldt zowel voor de MS-versie (in ieder geval afgeschreven) als voor de Oracle-versie.
Om verbinding te maken met een Oracle DB via de ODP.NET-provider moeten drie dingen correct worden ingesteld:
- Oracle-client moet correct worden ingesteld (heeft niets te maken met de .NET-provider, dit verwijst naar de geïnstalleerde oracle-client meestal in c:\oracle)
- De ODP.NET-provider moet compatibel zijn met de geïnstalleerde Oracle-client
- De architectuur van client en provider en uw toepassing moeten overeenkomen, u kunt de 64bit-client niet gebruiken met een x86-provider/toepassing en vice versa
Meestal is het het beste om de nieuwste versie van beide te hebben. Maar als u voor eens en voor altijd van dit probleem af wilt, gebruik dan een externe oracle .NET-provider.
UPDATE
Een van de betere is van DataDirect (geen aansluiting):
http://www. datadirect.com/products/net/net-for-oracle/index.html
Het is niet alleen de installatie (geen Oracle-client nodig), maar het is ook sneller, volledig beheerd, x64 en algemene ondersteuning is veel beter dan wat je krijgt met de ODP.NET-versie. Het zal je wel wat kosten.
De DevArt is ook behoorlijk behoorlijk (en veel veel goedkoper):
http:/ /www.devart.com/dotconnect/oracle/
We hebben voor de DataDirect gekozen om redenen van uitbreidbaarheid, dit zou echter niet relevant voor u moeten zijn.
Hier vind je een goede compilatie van derde partijen die .NET-providers bouwen, maar niet beperkt tot Oracle:
http://msdn.microsoft.com/en-us/data/dd363565