获取错误无法加载类型 'Microsoft.EntityFrameworkCore.Infrastructure.DesignTimeProviderServicesAttribute'

Getting Error Could not load type 'Microsoft.EntityFrameworkCore.Infrastructure.DesignTimeProviderServicesAttribute'

我有一个 .NET CORE 控制台应用程序,我已经为其创建了一个数据库,并希望使用数据库优先方法构建模型和数据库上下文,我有一个数据库,其中填充了我想要创建国家/地区模型的国家/地区在我的项目中进行操作。

Important note that I only have one project in this solution

当我在包管理器控制台中键入此内容时

Scaffold-DbContext "Data Source=DESKTOP-BJPQ694\SQLEXPRESS;Initial Catalog=CountryOrigin;User ID=quinoa;Password=chelseatext;ConnectTimeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" Microsoft.EntityFrameworkCore.SqlServer

我收到错误:

Could not load type 'Microsoft.EntityFrameworkCore.Infrastructure.DesignTimeProviderServicesAttribute' from assembly 'Microsoft.EntityFrameworkCore, Version=3.1.3.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'

看来您使用的可能是旧版本的 Microsoft.EntityFrameworkCore.SqlServer?尝试将其更新为 Microsoft.EntityFrameworkCore.SqlServer 3.1.

您的错误原因可能是 DesignTimeProviderServicesAttribute 仅支持到 Entity Framework Core 1.1,而 Microsoft.EntityFrameworkCore.Infrastructure 低于 Microsoft.EntityFrameworkCore.Infrastructure

因为您使用的是较新版本 Microsoft.EntityFrameworkCore.Infrastructure 不包含 DesignTimeProviderServicesAttribute 并抛出错误。在此处的 MSDN 上验证相同