Существует известная проблема с System.Net.Http.
Visual Studio 2017 возьмет System.Net.Http.dll
из C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Microsoft\Microsoft.NET.Build.Extensions\net461\lib
и поместит его в вывод сборки.На моем компьютере это версия 4.3.4 (версия файла 4.6.26011.1)
Если вы используете <PackageReference>
или даже прямой <Reference>
для другой версии System.Net.Http.dll
, Visual Studio 2017 будетигнорируйте вашу версию в пользу ее версии при создании вывода сборки (в папке / bin).
Это приведет к ошибкам при попытке внешнего вызова dll.
Основной вопрос:
Есть ли способ заставить msbuild / csproj использовать версию, на которую я ссылаюсь из NuGet?Может быть, я могу скопировать и перезаписать существующий файл System.Net.Http.dll в действии после сборки?
Что я пробовал:
Я пытался использоватьПереадресация привязки, но это никак не влияет на вывод сборки ( см. этот комментарий ).