¿Cómo solucionar el problema "El proveedor no es compatible con la versión del cliente de Oracle"?

Estamos utilizando la versión de ensamblaje Oracle.DataAccess.dll 2.102.2.20 (32 bits).

Implementé nuestra aplicación de API web en IIS y traté de abrir y cerrar una conexión:

 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);
            }
        }

En mi máquina local está bien, pero en este servidor se produce una excepción al intentar inicializar el OracleConnection:

El inicializador de tipo para 'Oracle.DataAccess.Client.OracleConnection' lanzó una excepción. ---> Oracle.DataAccess.Client.OracleException: el proveedor no es compatible con la versión del cliente de Oracle

Instalé el cliente Oracle 11.2 (32 bits) en el servidor y puedo ver que en el GAC (c: \ windows \ assembly) el conjunto Oracle.DataAccess está instalado en la arquitectura del procesador de 32 bits. Funciona bien en uno de nuestros servidores, pero no en este.

También en IIS, he establecido 'Habilitar aplicación de 32 bits' en el grupo de aplicaciones.

¿Cómo se puede arreglar? He pasado más de 10 horas probando cosas diferentes :(

Lo ideal sería poder usar Oracle.DataAccess.dll sin la necesidad de instalar un Cliente Oracle en el servidor.

Respuestas a la pregunta(3)

Su respuesta a la pregunta