我有一个包含5个项目的.NET核心3.0解决方案。其中一个项目使用EF6,另一个项目使用EF6,因此EF6和EF6被并行使用。Visual尽可能新鲜(16.3.5)。试图为使用EF6的项目创建迁移,并使用Windows 10在我的笔记本上执行are命令,我看到一条警告消息:“实体框架6和实体框架核心都已安装。实体框架6工具正在运行。使用‘EntityFrameworkCore\Update’表示实体框架核心,但一切都进行得很好,迁移成功。
Get-Module命令显示下表:
---------- ------- ---- ----------------
Script 6.3.0 EntityFramework6 {Add-EFDefaultConnectionFactory, Add-EFProvider, Add-Migration, Enable-Migrations...}
Script 3.0.0 EntityFrameworkCore {Add-Migration, Drop-Database, Enable-Migrations, Get-DbContext...}
Script 2.0.0.0 NuGet {Add-BindingRedirect, Find-Package, Get-Package, Get-Project...}
Script 0.0 profile在另一个带有Windows 7的工作站上,运行相同的命令,我看到几乎相同的表,但EF6导出的cmdlet列表为空:
---------- ------- ---- ----------------
Script 6.3.0 EntityFramework6
Script 3.0.0 EntityFrameworkCore {Add-Migration, Drop-Database, Enable-Migrations, Get-DbContext...}
Script 2.0.0.0 NuGet {Add-BindingRedirect, Find-Package, Get-Package, Get-Project...}
Script 0.0 profile 最后,在这种情况下,我根本无法对EF6绑定的项目执行迁移。我怎么才能解决这个问题?“添加-迁移”、“EntityFramework\附加-迁移”和“EntityFrameworkCore\Ad-迁移”都不起作用。
更新2019年10月17日,在我看来,我的VS安装已经损坏。好消息是EF6.3附带了ef.exe实用程序,它取代了migrate.exe,并允许开发人员使用命令行在outside之外创建迁移。
发布于 2019-10-16 19:13:59
只使用EF6或仅依赖于EFCore的项目创建额外的解决方案,并在使用该解决方案时执行特定版本的操作。
https://stackoverflow.com/questions/58419809
复制相似问题