NU1107:Microsoft.EntityFrameworkCore.SqlServer 的 .Net Core 2.1 兼容替代品?

NU1107: .Net Core 2.1-compatible alternatives to Microsoft.EntityFrameworkCore.SqlServer?

我正在学习 creating an MVC application with .Net Core 3.1 的 Microsoft 教程。我在 Visual Studio 2017 中使用 .Net Core 2.1。我的 Visual Studio 实例由我的公司管理,因此我无法升级到 .Net Core 3.1,因为它需要 Visual Studio 2019.

install the NuGet package for SqlServer 的步骤中,我收到错误 NU1107,因为包的 .NetCore 版本与我的项目版本不匹配。

有没有办法在不安装.Net Core 3.1 的情况下解决这个错误?也许要使用不同的包?

Install-Package : NU1107: Version conflict detected for Microsoft.EntityFrameworkCore. Install/reference Microsoft.EntityFrameworkCore 3.1.0 directly to project MvcMovie to resolve this issue. 
 MvcMovie -> Microsoft.EntityFrameworkCore.SqlServer 3.1.0 -> Microsoft.EntityFrameworkCore.Relational 3.1.0 -> Microsoft.EntityFrameworkCore (>= 3.1.0) 
 MvcMovie -> 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.PackageManagement.PowerShellCmdlets.InstallPackageCommand

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

更新

我 运行 尝试使用 .Net Core 2.1 环境遵循 .Net Core 3 教程,并最终发现我可以使用旧版本的教程!我责怪旗帜盲目。

右键单击您的项目并打开 "Manage Nuget Packages..."。 (下面突出显示)

搜索 Nuget 包,Microsoft.EntityFrameworkCore.SqlServer,并将版本更改为较旧的 2.2 版本。然后安装该版本的 Nuget 包。 (也突出显示)

这应该可以解决您与 Microsoft.AspNetCore.App 的冲突。