Visual Studio Nuget Package Manager Net Core, позволяющий устанавливать пакеты выше целевого sdk - PullRequest
0 голосов
/ 27 декабря 2018

Итак, у меня есть проект, нацеленный на Net Core 2.1 (в частности, на 2.1.500)

У меня также есть global.json, в котором тоже есть 2.1.500.

Недавно Microsoft обновилась доNet Core 2.2, но я пока не хочу переходить к этому.

Когда я открываю диспетчер пакетов Nuget, он показывает, что для некоторых пакетов доступны обновления

enter image description here

проблема в том, что всеэти пакеты для 2.2 SDK, и он полностью игнорирует тот факт, что я не нацелена на это.

Это похоже на ошибку, потому что в .Net Framework не будут предлагаться пакеты с таргетингом на sdk выше, чем тот, который вы использовали.

Это правильно?я должен сообщить о проблеме команде Net Core?

1 Ответ

0 голосов
/ 17 января 2019

Функциональность правильная.Библиотеки предназначены для .NETStandard2.0, а не .NET Core App 2.2, что означает, что любое приложение .NET Core, совместимое с .NET Standard 2.0, может использовать библиотеки, независимо от того, какие .NET SDK они используют.

Например,взгляните на EntityFramework.SqlServerCompact в окне Manage Nuget Packages в Visual Studio.Он перечисляет свои зависимости как .NETFramework,Version=v4.0, что означает, что он не будет работать в .NET Core или любых более ранних версиях .NET Framework.

Кроме того, если вы попытаетесь установить пакет EntityFramework.SqlServerCompact в.NET Core вы увидите ошибку в окне Список ошибок:

Предупреждение NU1701 Пакет 'EntityFramework.SqlServerCompact 6.2.0' был восстановлен с использованием '.NETFramework, Version = v4.6.1' вместоцелевая структура проекта ".NETCoreApp, версия = v2.1".Этот пакет может быть не полностью совместим с вашим проектом.

...