31

Tengo un proyecto asp.net mvc (EF), Había descargado el proveedor de datos Oracle con la versión 4.112.2.50 -32bit en mi pc cuando moví el proyecto a Windows Server 2008 (I tener la misma versión de ODP-64 bits) tengo el siguiente problema:No se pudo cargar el archivo o ensamblado Oracle.DataAccess

no se pudo cargar el archivo o ensamblado 'Oracle.DataAccess' o uno de sus dependencias . Se intentó cargar un programa con un formato incorrecto .

cuando me dio mucha vuelta Oracle el "Oracle.DataAccess.dll" desde el servidor y hacerlo con mi referencia del proyecto tengo otro mensaje de error como el de arriba con un archivo "Oracle.Web"

No se pudo cargar el archivo o ensamblado 'Oracle.Web' o una de sus dependencias . Se intentó cargar un programa con un formato incorrecto .

también si consigo el archivo "Oracle.Web.dll" al proyecto de referencia desde el servidor que tienen el mismo error con "Oracle.Web"

+1

Compruebe los puntos mencionados en http://stackoverflow.com/questions/8531475/oracle-dataaccess-dll-can-not-be-located-though-it-exists/8531874#8531874. Lo más probable es que se trate de un problema de 32/64 bits. – Codo

Respuesta

59

En el Administrador de IIS seleccione su servidor y seleccione "Grupos de aplicaciones". Seleccione el grupo de aplicaciones utilizado por su aplicación web y haga clic en "Configuración avanzada" en el menú de la derecha.

En la "Sección general" de la configuración avanzada Haga clic en "permitir que las aplicaciones de 32 bits" y la pusieron a verdadera.

Esta reparación solo se aplica a los servidores de 64 bits que intentan ejecutar la versión de 32 bits de los Dlls de Oracle.

Saludos George

+2

Funciona, pero ¿es ese el método correcto? –

3
  1. Oracle.DataAccess.dll debe ser instalado no solo referenciado.
  2. Cambie la propiedad local de copia de la referencia a verdadero.
+0

Oracle.DataAccess.dll está instalado también cambié la copia local para todas las referencias – user975260

1

Incorrecto El formato indica un problema de bitness. Para que el servidor se ejecute, cambie el grupo de aplicaciones en el que se ejecuta su programa para habilitar la compatibilidad de 32 bits o instalar un cliente Oracle de 64 bits.

0

Cambio de grupo de aplicación de 64 bits a 32 bits es una solución.

6

George escribió:

En el Administrador de IIS, seleccione el servidor y seleccione "Grupos de aplicaciones". Seleccione el grupo de aplicaciones utilizado por su aplicación web y haga clic en "Configuración avanzada" en el menú de la derecha.

En la "Sección general" de la configuración avanzada, haga clic en "Habilitar aplicaciones de 32 bits" y configúrelo en True.

Esta reparación solo se aplica a los servidores de 64 bits que intentan ejecutar la versión de 32 bits de los Dlls de Oracle.

Lo contrario también es cierto. Si es utilizando la versión de 64 bits de Oracle Dlls, debe establecer "Habilitar aplicaciones de 32 bits" a falso.

--Jacob

+0

Eres mi internet <3 – masterwok

0

Eliminación bin y obj carpetas resuelto mi problema.

Cuestiones relacionadas