Enkel lösning:du bör installera Oracle-klienten enligt plattformen (x64 på en x64-maskin). Anledningen är att din .NET-applikation med stor sannolikhet kommer att byggas i AnyCPU-konfiguration, vilket betyder att den kommer att köras som en x64-applikation på en x64-plattform. Den kan då bara ladda x64-inbyggda bibliotek...
Observera att när det kommer till Oracle, jag gillar att använda Oracle Instant Client :
- Du behöver inte installera något på måldatorerna (inklusive dev-boxar!).
- Du kan se till att din applikation körs med den specifika klient du valde (version, x86/x64).
- Du kan till och med enkelt få flera program att fungera med olika klientversioner på samma dator.
- Som en nackdel lägger den en betydande vikt till din applikation (minst 19 Mb).
Kolla Vilket är det minsta klientutrymme som krävs för att ansluta C# till en Oracle-databas? för mer information.
I just ditt fall rekommenderar jag att du ställer in ett Visual Studio-projekt som fungerar på x86- och x64-maskiner :kolla mitt blogginlägg Oracle Instant Client i Visual Studio . Här är sedan en vägledning om hur man konfigurerar en WiX paket för Oracle Instant Client inriktning på x86- eller x64-maskiner. Om du använder en annan distributionsstrategi, se bara till att du skickar rätt klient enligt målplattformen.