实体框架 - 在程序集中找不到迁移配置类型

use*_*775 6 c# entity-framework entity-framework-6

DbContext在 C# 项目中有多个s,我正在尝试启用迁移。当我指定完整命令时,即:

Enable-Migrations -ContextTypeName Models.Account.AccountDetailDbContext
Run Code Online (Sandbox Code Playgroud)

使用配置类创建了一个迁移文件夹,但随后我收到一条消息:

检查上下文是否针对现有数据库...

进而

在程序集“Portal.WebUI”中找不到迁移配置类型“Portal.WebUI.Migrations.Configuration”。

即使它刚刚创建了文件,它也找不到它。

我在包管理器控制台中选择了正确的项目

我已经尝试使用命令-verbose,但它没有提供额外的信息

如果我将 dbcontexts 和类复制到一个新项目中,那么一切正常,所以一定是这个现有项目中的某些东西导致迁移失败,但我不知道它是什么。

Kab*_*ain 11

我遇到了这个问题。我的解决方案:

  1. 退出视觉工作室

  2. 在 Visual Studio 上再次打开您的项目

  3. 重建解决方案

然后错误消除了。我可以运行命令。


小智 8

我通过添加EntityFrameworkCore\before解决了这个问题Add-Migration,即最终声明是:

EntityFrameworkCore\Add-Migration
Run Code Online (Sandbox Code Playgroud)

在为您的新迁移命名之后。


小智 7

运行Enable-Migrations并创建配置文件后,重建项目并Enable-Migrations -Force再次运行。


use*_*775 3

我设法通过卸载 EF nuget 包然后重新安装来解决此问题。