web-dev-qa-db-fra.com

Où puis-je trouver un package NuGet pour la mise à niveau vers System.Web.Http v5.0.0.0?

Vient de mettre à niveau un projet ASP.NET MVC4 pour qu’il utilise Unity.WebApi version 5.0.0.0. Il nécessite System.Web.Http v 5.0.0.0 selon l’erreur suivante:

Assembly 'Unity.WebApi, Version=5.1.0.0, Culture=neutral, PublicKeyToken=43da31bc42a85347' uses 'System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced Assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'   

Je fais actuellement référence à System.Web.Http v4.0, mais les packages NuGet suivants ont été mis à niveau vers leurs dernières versions respectives:

  • ANTLRv3
  • Fournisseurs universels Microsoft ASP.NET
  • Microsoft.Web.Infrastructure
  • Microsoft ASP.NET MVC
  • Microsoft ASP.NET Razor
  • Bibliothèques principales de fournisseurs universels Microsoft ASP.NET
  • Fournisseurs universels Microsoft ASP.NET
  • API Microsoft ASP.NET Web 2 Client
  • Microsoft ASP.NET Web API 2 Core
  • Hôte Web API Web Microsoft ASP.NET 2
  • API Web Microsoft ASP.NET 2
  • Page Web Microsoft ASP.NET
  • Microsoft.Web.Infrastructure
  • WebGrease

    via NuGet. Je n'ai pas répertorié les bibliothèques JavaScript pertinentes telles que la validation Micrososft.jQuery.Unobtrusive, etc.

Qu'est-ce que le package NuGet pour mettre à niveau System.Web.Http ou dois-je le faire manuellement?

118
Klaus Nji

Vous avez besoin du package Microsoft.AspNet.WebApi.Core .

Vous pouvez le voir dans le fichier .csproj:

<Reference Include="System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\packages\Microsoft.AspNet.WebApi.Core.5.0.0\lib\net45\System.Web.Http.dll</HintPath>
</Reference>
194
user247702

J'ai plusieurs projets dans une solution. Pour certains projets, j'avais précédemment ajouté les références manuellement. Lorsque j'ai utilisé NuGet pour mettre à jour le package WebAPI, ces références n'étaient pas mises à jour automatiquement.

J'ai découvert que je pouvais soit mettre à jour manuellement ces références afin qu'elles pointent vers la v5 DLL dans le dossier Packages de ma solution ou effectuez les opérations suivantes.

  1. Allez dans "Gérer les paquets NuGet"
  2. Sélectionnez le package installé "Microsoft ASP.NET Web API 2.1".
  3. Cliquez sur Gérer et vérifiez les projets que j'ai ajoutés manuellement auparavant.
9
Tony