c# - No se pudo cargar el archivo o conjunto System.Web.Mvc
asp.net asp.net-mvc (4)
Estamos usando la nube de Azure para ejecutar una implementación y obtuve el mismo error. Ya que realmente no puede instalar paquetes en las instancias del servidor, la forma de resolver esto es ir a las Referencias para su proyecto, encontrar la referencia a la biblioteca de la que se está quejando, ir a las propiedades, luego configurar Copiar Local en Verdadero. Vuelva a desplegar y ya está todo listo.
Estoy usando umbraco 4.11.3 en mi proyecto. Mi proyecto funciona bien, está bien en Windows 7 y lo ejecuta desde Visual Studio 2012. ¡Pero no funcionó en Win 8 cuando se ejecutó desde Visual Studio 2012!
Error es:
No se pudo cargar el archivo o el ensamblaje ''System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'' o una de sus dependencias. La definición del manifiesto del ensamblaje ubicado no coincide con la referencia del ensamblaje. (Excepción de HRESULT: 0x80131040)
Descripción: se produjo una excepción no controlada durante la ejecución de la solicitud web actual. Revise el seguimiento de la pila para obtener más información sobre el error y dónde se originó en el código.
Detalles de la excepción: System.IO.FileLoadException: No se pudo cargar el archivo o ensamblaje ''System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'' o una de sus dependencias. La definición del manifiesto del ensamblaje ubicado no coincide con la referencia del ensamblaje. (Excepción de HRESULT: 0x80131040)
Error de fuente:
Se generó una excepción no controlada 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 la pila de excepciones a continuación.
Rastreo de carga de ensamblaje: la siguiente información puede ser útil para determinar por qué no se pudo cargar el ensamblado ''System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35''.
=== Información de estado de Pre-bind === LOG: Usuario = Jahan-PC / jahan LOG: DisplayName = System.Web.Mvc, Versión = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 (Totalmente especificado) LOG: Appbase = file: /// G: /20130204/SourceCode/Defraz.Movafaqiyat.WebApp/Defraz.Movafaqiyat.WebApp/ LOG: Initial PrivatePath = G: / 20130204 / SourceCode / Defraz.Movafaqiyat.WebApp / Defp. bin Llamando a ensamblador: ClientDependency.Core.Mvc, Versión = 1.5.1.0, Culture = neutral, PublicKeyToken = null. === REGISTRO: este enlace se inicia en el contexto de carga predeterminado. REGISTRO: usando el archivo de configuración de la aplicación: G: / 20130204 / SourceCode / Defraz.Movafaqiyat.WebApp / Defraz.Movafaqiyat.WebApp / web.config REGISTRO: usando el archivo de configuración del host: C: / Users / jahan / Documents / IISExpress / config / aspnet .config LOG: usando el archivo de configuración de la máquina desde C: / Windows / Microsoft.NET / Framework / v4.0.30319 / config / machine.config. REGISTRO: Referencia posterior a la política: System.Web.Mvc, Versión = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 REGISTRO: Intentando la descarga del nuevo archivo de URL: /// C: / Users / jahan / AppData / Local / Temp / Archivos temporales de ASP.NET / root / bc5b37d0 / 42db0b24 / System.Web.Mvc.DLL. REGISTRO: Intento de descargar el nuevo archivo URL: /// C: / Users / jahan / AppData / Local / Temp / Temporary ASP.NET Files / root / bc5b37d0 / 42db0b24 / System.Web.Mvc / System.Web.Mvc.DLL . REGISTRO: Intento de descargar el nuevo archivo URL: /// G: /20130204/SourceCode/Defraz.Movafaqiyat.WebApp/Defraz.Movafaqiyat.WebApp/bin/System.Web.Mvc.DLL. WRN: Al comparar el nombre del ensamblaje se produjo una discrepancia: Versión principal ERR: No se pudo completar la configuración del ensamblaje (hr = 0x80131040). Sondeo terminado.
Traza de la pila:
[FileLoadException: no se pudo cargar el archivo o el ensamblaje ''System.Web.Mvc, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'' o una de sus dependencias. La definición del manifiesto del ensamblaje ubicado no coincide con la referencia del ensamblaje. (Excepción de HRESULT: 0x80131040)]
ClientDependency.Core.Mvc.MvcFilter.ValidateCurrentHandler () +0
ClientDependency.Core.Module.ClientDependencyModule.b__0 (IFilter f) +31 System.Linq.Enumerable.Any (IEnumerable1 source, Func
2 predicate) +146
ClientDependency.Core.Module.ClientDependencyModule.ValidateCurrentHandler (IEnumerable`1 filters) +127
ClientDependency.Core.Module.ClientDependencyModule.HandleRequest (Object sender, EventArgs e) +179
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute () +136 System.Web.HttpApplication.ExecuteStep (IExecutionStep step, Boolean & completedSynchronously) +69
Nota: el proyecto publicado en IIS funciona bien en win7 y win8. Mi proyecto no está basado en ASP.NET MVC. Por favor, ayúdame.
La solución correcta para este problema es:
- Haga clic derecho en
References
en suSolution Explorer
y elijaManage NuGet Packages
- En el lado izquierdo, seleccione
Updates
- En la sección central, seleccione
Microsoft ASP.NET MVC
- Debería ver aparecer un botón
Update
en su selección, haga clic en él
Eso es todo ... acepte cualquier T & C que pueda aparecer y publique o ejecute su proyecto localmente. Si aún tiene problemas para ejecutar su proyecto localmente, intente cerrar Visual Studio eliminando el archivo .SUO para el proyecto e intente abrir la solución nuevamente ... intente ejecutar nuevamente.
Supongo que esta es una máquina nueva, ya que tiene el nuevo sistema operativo y una versión diferente de Visual Studio. Creo que necesita instalar MVC Framework versión 2, ya que eso es lo que espera su instalación de Umbraco. Puede instalar el Framework y obtener las DLL en su GAC, o copiar las DLL de su buen sistema en la carpeta bin de su aplicación web.
Tenga en cuenta que está diciendo que su proyecto "no usa" MVC, pero creo que encontrará que Umbraco sí lo hace. El error, en cualquier caso, le está diciendo que el sistema espera encontrarlo.
Umbraco 4.11.3 no usa MVC2, usa MVC3, así que supongo que tiene una referencia en su web.config a la biblioteca MVC2, posiblemente en la sección de compilation > assemblies
. Debería verse algo como esto:
<compilation defaultLanguage="c#" batch="false" targetFramework="4.0" debug="true">
<assemblies>
<!-- ASP.NET 4.0 Assemblies -->
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Data.DataSetExtensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
<!-- Added in Umbraco 4.6.2 -->
<buildProviders>
<add extension=".cshtml" type="umbraco.MacroEngines.RazorBuildProvider, umbraco.MacroEngines" />
<add extension=".vbhtml" type="umbraco.MacroEngines.RazorBuildProvider, umbraco.MacroEngines" />
<add extension=".razor" type="umbraco.MacroEngines.RazorBuildProvider, umbraco.MacroEngines" />
</buildProviders>
<!-- End of added in Umbraco 4.6.2 -->
</compilation>