Мне нужно обновить мой проект WebApi2 с 4.7.1 до 4.8, поэтому я сделал следующее:
- Изменил
Target Framework
на 4.8 на вкладке «Свойства» - Изменено ' targetFramework = "net471" 'to' "targetFramework = net48" 'в
packages.config
- Удалил папки bin и obj, а затем сделал
nuget restore
- Проверено, что все указанные файлы в
References\Assemblies
укажите на SDK v4.8
папку - Перестроил решение
Затем я изменил следующее в web.config
:
<system.web>
<compilation debug="true" targetFramework="4.8"/>
<httpRuntime targetFramework="4.8"/>
</system.web>
Однако я получить исключение при запуске проекта:
Не удалось загрузить файл или сборку 'System. Net .Http, Version = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b03f5f7f11d50a3a' или один из его зависимости. Система не может найти указанный файл. Описание: необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее происхождении в коде.
Сведения об исключении: System.IO.FileNotFoundException: не удалось загрузить файл или сборку 'System. Net .Http, Version = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a 'или одна из его зависимостей. Система не может найти указанный файл.
Соответствующий раздел в web.config
:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="B03F5F7F11D50A3A" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0"/>
</dependentAssembly>
Проект является частью более крупного решения и ссылается на проекты, предназначенные для netstandard2.0
. Однако это не проблема, потому что все работало при использовании 4.7.1
Где / что еще мне нужно проверить / изменить, чтобы запустить проект с использованием v4.8
?