我正在从事一个.NET Core2.2项目。我安装了实体框架核心nuget包。
但是当我尝试启用迁移时,会出现错误
项目中没有安装EntityFramework包
我找到了一个解决办法,
错误的一种可能性--在Package控制台中,“默认项目”有一个下拉列表。如果设置不正确,您将得到项目'x‘上没有安装EntityFramework包。更改下拉到您的EF项目,一切都是好的。
但选定的项目是正确的。
所以我用命令检查了包管理器控制台中的模块,
PM> Get-Module EntityFramework*
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 6.0.0.0 EntityFramework {Add-EFDefaultConnectionFactory, Add-
EFProvider, Add-Migration...
Script 2.2.6 EntityFrameworkCore {Add-Migration, Drop-Database, Enable-
Migrations, Get-DbContex...*因此,我认为我的类库中有两个实体框架版本。但是当我签入包选项时,没有找到实体框架,只有实体框架核心存在。

如何解决这个问题?
发布于 2020-02-04 11:03:26
如果DbContext位于另一个定制类库中,而不是在启动项目中,则很可能需要在EF命令中指定该项目:
在powershell中
Add-migration NameOfMigration -Project Namespace.ToContextProject和dotnet
dotnet ef migrations add NameOfMigration --project relativePath/ToContextProject
dotnet ef migrations add InitialCreate -p relativePath/ToContextProject发布于 2021-04-21 13:52:25
我有一个类似的问题,在运行*时,我有两个引用,一个用于EntiryFramework 6.0,另一个用于EntityFrameworkCore。
我从未安装过EntityFramework6。然而,为了克服这一点,我必须限定我希望通过迁移添加的框架,以及更新数据库。
https://stackoverflow.com/questions/60051648
复制相似问题