Where can I find a NuGet package for upgrading to System.Web.Http v5.0.0.0?

落花浮王杯 提交于 2019-11-27 00:32:04

问题


Just upgraded an ASP.NET MVC4 project to use Unity.WebApi version 5.0.0.0 and it requires System.Web.Http v 5.0.0.0 as per the following error:

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'   

I am currently referencing System.Web.Http v4.0 but have the following NuGet packages upgraded to their respective latest versions:

  • ANTLRv3
  • Microsoft ASP.NET Universal Providers
  • Microsoft.Web.Infrastructure
  • Microsoft ASP.NET MVC
  • Microsoft ASP.NET Razor
  • Microsoft ASP.NET Universal Providers Core Libraries
  • Microsoft ASP.NET Universal Providers
  • Microsoft ASP.NET Web API 2 Client
  • Microsoft ASP.NET Web API 2 Core
  • Microsoft ASP.NET Web API 2 Web Host
  • Microsoft ASP.NET Web API 2
  • Microsoft ASP.NET Web Page
  • Microsoft.Web.Infrastructure
  • WebGrease

    via NuGet. I have not listed relevant JavaScript libraries such as Micrososft.jQuery.Unobtrusive Validation, etc.

What is the NuGet package to upgrade System.Web.Http or do I have to do this manually?


回答1:


You need the Microsoft.AspNet.WebApi.Core package.

You can see it in the .csproj file:

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



回答2:


I have several projects in a solution. For some of the projects, I previously added the references manually. When I used NuGet to update the WebAPI package, those references were not updated automatically.

I found out that I can either manually update those reference so they point to the v5 DLL inside the Packages folder of my solution or do the following.

  1. Go to the "Manage NuGet Packages"
  2. Select the Installed Package "Microsoft ASP.NET Web API 2.1"
  3. Click Manage and check the projects that I manually added before.


来源:https://stackoverflow.com/questions/20202188/where-can-i-find-a-nuget-package-for-upgrading-to-system-web-http-v5-0-0-0

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!