GOOGLE ADS

пятница, 15 апреля 2022 г.

Не удалось загрузить файл или сборку «System.Net.Http, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a»

Я скопировал свой проект на чистую машину с Windows 10, на которой установлены только Visual Studio 2015 Community и SQL Server 2016 Express. Никаких других версий фреймворка, кроме тех, что установлены с Windows 10 и VS2015 или SQL Server, не установлено.

Когда я пытаюсь запустить проект WebApi, я получаю сообщение:

Не удалось загрузить файл или сборку «System.Net.Http, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a» или одну из ее зависимостей. Система не может найти указанный файл.

В пакеты проекта входят:

<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Tracing" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />

После сборки проекта с помощью.NET Framework 4.6.1 System.Net.Httpфайл не найден в binпапке.

Путь к файлу указывает на:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.6.1\System.Net.Http.dll

Путь к файлу System.Net.Http.Formattingуказывает на:

C:\Development\MyApp\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll

Должен ли весь проект ориентироваться на 4.5.1 или есть другой способ сослаться на правильные сборки?


Решение проблемы

Выполните следующие шаги,

  • Обновите Visual Studio до последней версии (это важно)

  • Удалить все перенаправления привязки изweb.config

  • Добавьте это в .csprojфайл:

    <PropertyGroup>
    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
    <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
    </PropertyGroup>

  • Построить проект

  • В binпапке должен быть (WebAppName).dll.configфайл

  • В нем должны быть перенаправления, скопируйте их вweb.config

  • Удалите вышеприведенный фрагмент из .csprojфайла

  • Он должен работать

    Комментариев нет:

    Отправить комментарий

    Laravel Datatable addColumn returns ID of one record only

    Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...