Wir verwenden die Oracle.DataAccess.dll Assemblyversion 2.102.2.20 (32 Bit).So beheben Sie "Der Anbieter ist nicht kompatibel mit der Version von Oracle-Client"?
ich unsere Web-API-Anwendung auf IIS eingesetzt und versuchte und Abbau eine Verbindung openning:
private static void CheckConnectionUsingOracleClient(string connection)
{
var logger = DiContainer.Resolve<ILogger>();
try
{
logger.LogInfo("Trying to connect to " + connection);
// check whether you can connect to the shop using Oracle.DataAccess
using (var cnn = new Oracle.DataAccess.Client.OracleConnection(connection))
{
cnn.Open();
cnn.Close();
}
logger.LogInfo("Succeeded to connect to " + connection);
}
catch (System.Exception ex)
{
logger.LogError("Failed to connect to " + connection, ex);
}
}
auf meinem lokalen Rechner wirft sie es ist in Ordnung, aber auf diesem Server eine Ausnahme, wenn die die OracleConnection zu initialisieren versuchen:
Der Typinitialisierer für 'Oracle.DataAccess.Client.OracleConnection' hat eine Ausnahme ausgelöst. ---> Oracle.DataAccess.Client.OracleException: Der Anbieter ist nicht kompatibel mit der Version von Oracle-Client
I Oracle-Client 11.2 (32 Bit) auf dem Server installiert haben, und ich kann sehen, dass in Der GAC (c: \ windows \ assembly) Die Oracle.DataAccess-Assembly wird in einer 32-Bit-Prozessorarchitektur installiert. Es funktioniert gut auf einem unserer Server, aber nicht in diesem.
In IIS habe ich auch "32-Bit-Anwendung aktivieren" im Anwendungspool festgelegt.
Wie kann es behoben werden? Ich habe mehr als 10 Stunden damit verbracht, so weit versucht, verschiedene Dinge :(
Ich würde ideal Oracle.DataAccess.dll in der Lage sein möge, ohne die Notwendigkeit zu verwenden, um einen Oracle-Client auf dem Server zu installieren.
Möglicherweise Probleme mit dem Fahrer des Verbinders. Versuchen Sie, andere Versionen zu entfernen/zu installieren. – PiLHA
Mögliches Duplikat von http://stackoverflow.com/questions/659341/the-provider-is-not-compatible-with-the-version-of-oracle-client – cremor