¿Cómo obtener 'System.Web.Http, Version = 5.2.3.0?


88

Acabo de crear un proyecto MVC5 y agregué varios paquetes de nuget, pero luego, cuando compilé el proyecto, recibí este error. Parece que uno de los paquetes realmente depende de system.web.http versión 5.2.3.0, que no pude encontrar en ninguna parte. Me pregunto cómo obtener la última versión de system.web.http.

Error 2 Assembly 'System.Web.Http.WebHost, Version = 5.2.3.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' uses 'System.Web.Http, Version = 5.2.3.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' que tiene una versión superior al ensamblado referenciado 'System.Web.Http, Version = 5.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' 
d: \ Backup 2014-12-25 \ Website-Projects \ www.ptsol.com.au \ packages \ Microsoft.AspNet.WebApi.WebHost.5.2.3 \ lib \ net45 \ System.Web.Http.WebHost.dll

Respuestas:


117

En la consola del administrador de paquetes

Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3


Lo hice, pero todavía me da el mismo error <br/> <pre> PM> install-package microsoft.aspnet.webapi.core -version 5.2.3 Intentando resolver la dependencia 'Microsoft.AspNet.WebApi.Client (≥ 5.2.3 ) '. Intentando resolver la dependencia 'Newtonsoft.Json (≥ 6.0.4)'. 'Microsoft.AspNet.WebApi.Core 5.2.3' ya está instalado. www.ptsol.com.au ya tiene una referencia a 'Microsoft.AspNet.WebApi.Core 5.2.3'. </pre>
John Hadikusumo

4
@JohnHadikusumo haga esto para todos sus proyectos. Parece que tiene un proyecto dependiente con una versión anterior.
Rap

Sí, esto funcionará. Lea atentamente su Web.config y su packages.config antes y después de ejecutar este comando y verá lo que cambió.
AlfredBr

Resolvió mi problema.
Phon Soyang

19

Una forma de solucionarlo es modificando el redireccionamiento del ensamblado en el archivo web.config.

Modifique lo siguiente:

<dependentAssembly>
        <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>

a

<dependentAssembly>
        <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="4.0.0.0" />
</dependentAssembly>

Así que el atributo oldVersion debería cambiar de "...- 4.0.0.0" a "...- 5.2.3.0".


Esto funcionó para mí. Teníamos la bindingRedirectconfiguración como, <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />pero la cambiamos para usarla 4.0.0.0. Todavía no tiene sentido para mí, porque debería usar la DLL del paquete NuGet y no la versión GAC, pero bueno, funcionó ... ¡así que gracias!
jamiebarrow

8

Lo hice, Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3pero aún así no funcionó. Luego miré en la carpeta bin de mi proyecto y vi que todavía tenía el antiguo archivo System.Web.Mvc.

Así que copié manualmente el archivo más nuevo del paquete a la carpeta bin. Luego estaba en funcionamiento de nuevo.


7

Paquete de instalación Microsoft.AspNet.WebApi.Core -versión 5.2.3

Luego, en el proyecto Agregar referencia -> Examinar. Presione el botón de exploración y vaya a C: \ Users \ UserName \ Documents \ Visual Studio 2015 \ Projects \ ProjectName \ packages \ Microsoft.AspNet.Mvc.5.2.3 \ lib \ net45 y agregue el archivo .dll necesario


7

Los paquetes que instaló introdujeron dependencias a la versión 5.2.3.0 dll como el usuario Bracher mostró arriba. Microsoft.AspNet.WebApi.Cors es un paquete de ejemplo. El camino que tomo es actualizar el proir del proyecto MVC a cualquier paquete que se instale:

Install-Package Microsoft.AspNet.Mvc -Version 5.2.3

https://www.nuget.org/packages/microsoft.aspnet.mvc


3

Desinstalar y reinstalar el paquete NuGet funcionó para mí.

  1. Elimine cualquier referencia anterior del proyecto.

Ejecute esto en la consola del administrador de paquetes:

  1. UnInstall-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
  2. Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3

Solo este resolvió mi problema. He hecho mucho y ganar acción fue muy simple.
George Lanetz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.