У нас есть проект на .Net 4.6.1, в который мы добавили пакеты IdentityServer.
Одна ошибка, которую мы получаем, по-видимому, решается путем обновления System.Net.Http.dll до версии 4.3..3 (https://github.com/aspnet/Security/issues/1116)
Кажется, проблема в том, что VS 2017 (15.7.3) ссылается только на C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\Microsoft\Microsoft.NET.Build.Extensions\net461\lib\System.Net.Http.dll
, а не packages\System.Net.Http.4.3.3\lib\net46\System.Net.Http.dll
, даже если я добавляю его вручную. По крайней мере, это путь, указанный в ссылкеокно сведений и версия, которая заканчивается в папке bin.
При просмотре .csproj он показывает
<Reference Include="System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\System.Net.Http.4.3.3\lib\net46\System.Net.Http.dll</HintPath>
</Reference>
Еще одна вещь, которая усложняет это, это то, что естьнет никакой матрицы между версиями NuGet, версиями файлов и версиями сборок, которые я мог бы найти, чтобы помочь мне в этом разобраться.
Я проверяю несколько сред, но могу получить только версию файла, и нет ничего, что можно было бы проверитьпротив.
Пакет NuGet 4.3.3 = File Version: 4.6.25705.1
Версия в структуре dir = 4.6.26011.1
Некоторая версия в одном из наших envs, которая неработа = 4.6.25514.4