2012-10-06 67 views
8

Mi aplicación web ASP.NET MVC3 funcionaba bien. pero cuando reinicia el PC y luego tratar de actualizar la aplicación en MS VS 2010 muestra un error durante la ejecución de la aplicación:No se pudo cargar el archivo o ensamblado 'EntityFramework' o una de sus dependencias

Could not load file or assembly 'EntityFramework' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)) 

Descripción:

An unhandled exception occurred during the execution of the current web request. Please 
review the stack trace for more information about the error and where it originated in the code. 

Detalles de la excepción: Sistema .IO.FileLoadException: no se pudo cargar el archivo o ensamblado 'EntityFramework' o una de sus dependencias. El parámetro es incorrecto. (Excepción de HRESULT: 0x80070057 (E_INVALIDARG))

Error de origen:

una excepción no controlada se generó durante la ejecución de la solicitud Web actual. La información sobre el origen y la ubicación de la excepción se puede identificar utilizando el seguimiento de pila de excepción a continuación.

Rastreo de carga de ensamblaje: la siguiente información puede ser útil para determinar por qué el ensamblado 'EntityFramework' no se pudo cargar.

WRN: El registro de enlace de ensamblaje está APAGADO. Para habilitar el registro de fallas de enlace de ensamblaje, establezca el valor de registro [HKLM \ Software \ Microsoft \ Fusion! EnableLog] (DWORD) en 1. Nota: Hay una cierta penalización de rendimiento asociada con el registro de fallas de enlace de ensamblaje. Para desactivar esta función, elimine el valor de registro [HKLM \ Software \ Microsoft \ Fusion! EnableLog].

Seguimiento de la pila:

[FileLoadException: Could not load file or assembly 'EntityFramework' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))] 

[FileLoadException: Could not load file or assembly 'EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))] 
System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0 
System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +39 
System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks) +132 
System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +144 
System.Reflection.Assembly.Load(String assemblyString) +28 
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +46 

[ConfigurationErrorsException: Could not load file or assembly 'EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))] 
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +618 
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +209 
System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130 
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +178 
System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +94 
System.Web.Compilation.BuildManager.CallPreStartInitMethods() +332 
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +591 

[HttpException (0x80004005): Could not load file or assembly 'EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))] 
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +8946484 
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +97 
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +258 

A continuación, se borran todos los archivos de Windows temporal y archivo temporal ASP.NET a continuación, ejecutar de nuevo la aplicación. pero la situación no se mejora. ¿Podrías por favor ayudarme a resolver esto? Gracias.

Respuesta

14

Simplemente volver a agregar paquete de Entity Framework Herramientas-biblioteca Manager-> Gestor de paquetes de consola

Tipo:

 
Install-Package EntityFramework 

restaurará (está ejecutando v 4.4, que es la versión V5 en Visual studio 2010)

Si quiere estar "limpio" primero puede intentar una desinstalación. No hay daño en esto incluso si falla.

 
Uninstall-Package EntityFramework 
+0

gracias. Está funcionando ahora. – arefinsami

+2

No pude eliminarlo debido a dependencias, pero me ayudó una reinstalación: Update-Package -reinstall EntityFramework –

2

tuve un problema similar y tuve que eliminar manualmente la carpeta del paquete en mi solución y la referencia al paquete en el archivo packages.config y vuelva a instalarlo utilizando la consola de Administrador de paquetes para solucionarlo.

8

Asegúrese de que todos los proyectos estén orientados al mismo .NET Framework. Tengo un proyecto .NET 4.5 que hace referencia a una biblioteca de clase que está utilizando 4.0 y estaba recibiendo este problema, una vez que lo cambié a 4.5 funcionó bien y pude instalar EF usando NuGet Package Manager Console

13

Si ninguna de las otras respuestas funciona para usted (incluidas las respuestas a otras preguntas similares en SO sobre este mismo problema), pruebe lo siguiente que funcionó para mí (según http://forums.devart.com/viewtopic.php?f=3&t=26327):

Agregar el siguiente código XML en el archivo .config * de su aplicación para resolver el problema:

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
     <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" /> 
     <bindingRedirect oldVersion="4.4.0.0" newVersion="5.0.0.0" /> 
    </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
3

que estaba recibiendo este error. La causa resultó ser más simple que algunas de las otras respuestas: tuve dos proyectos que hicieron referencia a diferentes versiones de Entity Framework. Uno provenía de un paquete NuGet que contenía la última versión, y el otro era de la plantilla ASP.NET MVC 4.

Mi solución fue eliminar la referencia a la versión anterior de EF (5) del proyecto MVC 4 e instalar la última con NuGet. Todo salió bien después de eso.

+0

No podría haberlo averiguado ... ¡Gracias amigo! –

Cuestiones relacionadas