web-dev-qa-db-fra.com

Comment obtenir 'System.Web.Http, Version = 5.2.3.0?

Je viens de créer un projet MVC5 et d’ajouter plusieurs paquets de nuget, mais lorsque j’ai compilé le projet, j’ai eu cette erreur. Il semble que l’un des paquets dépend vraiment de la version 5.2.3.0 de system.web.http, que je n’ai trouvée nulle part. Je me demande juste comment obtenir la dernière version de system.web.http?

 Erreur 2 Assembly 'System.Web.Http.WebHost, Version = 5.2.3.0, Culture = neutre, PublicKeyToken = 31bf3856ad364e35' utilise 'System.Web.Http, Version = 5.2.3.0, Culture = neutre, PublicKeyToken = 31bf3856ad364e35 'dont la version est supérieure à celle de Assembly' 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
83
John Hadikusumo

Dans la console du gestionnaire de packages

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

110
Roman Patutin

Une solution consiste à modifier la redirection de l'assembly dans le fichier web.config.

Modifier les éléments suivants:

<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>

à

<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>

Ainsi, l'attribut oldVersion devrait passer de "...- 4.0.0.0" à "...- 5.2.3.0".

19
Bracher

Les paquets que vous avez installés ont introduit des dépendances à la version 5.2.3.0 des dll, comme l’a montré l’utilisateur Bracher ci-dessus. Microsoft.AspNet.WebApi.Cors est un exemple de package. Le chemin que je prends est de mettre à jour le projet MVC de chaque installation de paquet:

Install-Package Microsoft.AspNet.Mvc -Version 5.2.3

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

7
Doug Wiley

J'ai fait Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3 mais cela ne fonctionnait toujours pas. Puis j'ai regardé dans mon dossier bin du projet et j'ai constaté qu'il contenait toujours l'ancien fichier System.Web.Mvc.

J'ai donc copié manuellement le fichier le plus récent du package dans le dossier bin. Puis je me suis remis à courir.

7
Bob Koury

Kit d'installation Microsoft.AspNet.WebApi.Core - version 5.2.3

Ensuite, dans le projet Ajouter une référence -> Parcourir. Appuyez sur le bouton de navigation et accédez au répertoire C:\Utilisateurs\Nom d'utilisateur\Documents\Visual Studio 2015\Projets\Nom du projet\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45 et ajoutez le fichier .dll nécessaire.

6
Vitali Siamenau

Désinstaller et réinstaller le package NuGet a fonctionné pour moi.

  1. Supprimez toute ancienne référence du projet.

Exécutez ceci dans la console du gestionnaire de packages:

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