Обнаружена версия пакета вне ограничения зависимости: Microsoft.AspNetCore.App 2.1.1 - PullRequest
0 голосов
/ 15 декабря 2018

Я пытаюсь установить некоторые пакеты в моем API, используя:

Install-Package Microsoft.EntityFrameworkCore.SqlServer

Выдает ошибку (приведено ниже):

NU1608: Detected package version outside of dependency constraint: Microsoft.AspNetCore.App 2.1.1 requires Microsoft.EntityFrameworkCore.SqlServer (>= 2.1.1 && < 2.2.0) but version Microsoft.EntityFrameworkCore.SqlServer 2.2.0 was resolved.
Install-Package : NU1107: Version conflict detected for 
Microsoft.EntityFrameworkCore. Install/reference Microsoft.EntityFrameworkCore 
2.2.0 directly to project ChinookCoreAPI to resolve this issue. 
 ChinookCoreAPI -> Microsoft.EntityFrameworkCore.SqlServer 2.2.0 -> 
Microsoft.EntityFrameworkCore.Relational 2.2.0 -> 
Microsoft.EntityFrameworkCore (>= 2.2.0) 
 ChinookCoreAPI -> Microsoft.AspNetCore.App 2.1.1 -> 
Microsoft.EntityFrameworkCore (>= 2.1.1 && < 2.2.0).
At line:1 char:1
+ Install-Package Microsoft.EntityFrameworkCore.SqlServer
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManag 
   ement.PowerShellCmdlets.InstallPackageCommand

Install-Package : Package restore failed. Rolling back package changes for 
'ChinookCoreAPI'.
At line:1 char:1
+ Install-Package Microsoft.EntityFrameworkCore.SqlServer
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManag 
   ement.PowerShellCmdlets.InstallPackageCommand

Может кто-нибудь помочь мне решить эту проблему, как яЯ новичок в этом.

Ответы [ 2 ]

0 голосов
/ 14 июля 2019

Текущая версия ASPNET Core (Microsoft.AspNetCore.App 2.1.1) не поддерживает последнюю версию EFCore (Microsoft.EntityFrameworkCore 2.2.0).

В Startup.cs уменьшите версию EF, как "Microsoft.EntityFrameworkCore.SqlServer" Version = "2.1.1" и снова восстановить.

Это сработало для меня.

0 голосов
/ 15 декабря 2018

EF Core и ASP.NET Core (были) использовались для совместной поставки.В ASP.NET Core 2.x (Microsoft.AspNetCore.App / Microsoft.AspNetCore.App метапакеты) EF Core является частью метапакетов ASP.NET Core (см. метапакет Microsoft.AspNetCore.App для ASP.NET Core 2.1 ).

В ASP.NET Core 3.0 EntityFrameworkCore, JSON.NET и Microsoft.CodeAnalysis больше не будут участвовать в пакетах Microsoft.AspNetCore.App/All.См. Объявление GitHub .

Вы получаете эту проблему, потому что Install-Package Microsoft.EntityFrameworkCore.SqlServer устанавливает последнюю версию EF Core (2.2), в то время как ваше приложение ASP.NET Core все еще находится на версии 2.1.

Или обновите приложение до ASP.NET Core 2.2.

Но проблема здесь в том, что для ChinookCoreAPI требуется более старая версия ASP.NET Core (и EF Core), а именно 2.1.Из вашего вопроса не ясно, если вы сделали Install-Package Microsoft.EntityFrameworkCore.SqlServer в вашем проекте приложения или на ChinookCoreAPI.Если на Install-Package Microsoft.EntityFrameworkCore.SqlServer установлена ​​новейшая версия EF Core в проекте App, это следует исправить.В противном случае уменьшите значение ChinookCoreAPI до 2.1.1

.
...