Где я могу найти пакет 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, обновленные до их последних версий:
Что такое пакет 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"
- Нажмите "Управление" и проверьте проекты, которые я ранее добавил вручную.