Где я могу найти пакет NuGet для обновления до System.Web.Http v5.0.0.0?

Просто обновил проект ASP.NET MVC4, чтобы использовать Unity.WebApi версии 5.0.0.0, и ему требуется System.Web.Http v 5.0.0.0 в соответствии со следующей ошибкой:

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'   

В настоящее время я ссылаюсь на System.Web.Http v4.0, но имею следующие пакеты NuGet, обновленные до их последних версий:

  • ANTLRv3
  • Универсальные поставщики Microsoft ASP.NET
  • Microsoft.Web.Infrastructure
  • Microsoft ASP.NET MVC
  • Microsoft ASP.NET Razor
  • Основные библиотеки Microsoft ASP.NET Universal Providers.
  • Универсальные поставщики Microsoft ASP.NET
  • Клиент ASP.NET Web API 2 для ASP.NET
  • Microsoft ASP.NET Web API 2 Core
  • Веб-хостинг Microsoft ASP.NET Web API
  • Microsoft ASP.NET Web API 2
  • Веб-страница Microsoft ASP.NET
  • Microsoft.Web.Infrastructure
  • WebGrease

    через NuGet. Я не перечислял соответствующие библиотеки JavaScript, такие как Micrososft.jQuery.Unobtrusive Validation и т.д.

Что такое пакет NuGet для обновления System.Web.Http или мне нужно сделать это вручную?

Ответ 1

Вам нужен пакет Microsoft.AspNet.WebApi.Core.

Вы можете увидеть его в файле .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>

Ответ 2

У меня есть несколько проектов в решении. Для некоторых проектов я ранее добавлял ссылки вручную. Когда я использовал NuGet для обновления пакета WebAPI, эти ссылки не обновлялись автоматически.

Я выяснил, что могу либо вручную обновить эту ссылку, чтобы указать на DLL v5 внутри папки Packages моего решения, либо сделать следующее.

  • Перейдите в раздел "Управление пакетами NuGet"
  • Выберите установленный пакет "Microsoft ASP.NET Web API 2.1"
  • Нажмите "Управление" и проверьте проекты, которые я ранее добавил вручную.