Подтвердить что ты не робот

Как получить 'System.Web.Http, Version = 5.2.3.0?

Я только что создал проект MVC5 и добавил несколько пакетов из nuget, но затем, когда я скомпилировал проект, я получил эту ошибку. Кажется, что один из пакетов действительно зависит от system.web.http версии 5.2.3.0, которого я не смог найти нигде. Мне просто интересно, как получить последнюю версию system.web.http?

Error   2   Assembly 'System.Web.Http.WebHost, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' uses 'System.Web.Http, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced 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
4b9b3361

Ответ 1

В консоли диспетчера пакетов

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

Ответ 2

Один из способов исправить это путем изменения перенаправления сборки в файле web.config.

Измените следующее:

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

Таким образом, атрибут oldVersion должен измениться с "...- 4.0.0.0" на "...- 5.2.3.0".

Ответ 3

Установочный пакет Microsoft.AspNet.WebApi.Core -version 5.2.3

Затем в проекте Add Reference → Browse. Нажмите кнопку обзора и перейдите к  C:\Users\UserName\Documents\Visual Studio 2015\Projects\ProjectName\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45 и добавьте необходимый .dll файл

Ответ 4

Я сделал Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3, но он все еще не работал. Затем заглянул в папку моего проекта bin и увидел, что у него все еще был старый файл System.Web.Mvc.

Итак, я вручную скопировал новый файл из пакета в папку bin. Затем я снова начал работать.

Ответ 5

Пакеты, которые вы установили, ввели зависимости от dll версии 5.2.3.0 как пользователь Bracher, показанный выше. Microsoft.AspNet.WebApi.Cors является примером пакета. Путь, который я принимаю, - обновить proc проекта MVC:

Install-Package Microsoft.AspNet.Mvc -Version 5.2.3

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

Ответ 6

Деинсталляция и повторная установка пакета NuGet работала для меня.

  • Удалите любую старую ссылку из проекта.

Выполните это в консоли диспетчера пакетов:

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