【问题标题】:No context type was found in the assembly - The type 'ApplicationDbContext' does not inherit from DbContext在程序集中找不到上下文类型 - 类型“ApplicationDbContext”不继承自 DbContext
【发布时间】:2020-04-19 17:13:13
【问题描述】:

当我尝试更新数据库时,它会引发以下错误。请注意,以前我使用 update-database cmd 可以正常工作。

在程序集“大亨”中找不到迁移配置类型。 (在 Visual Studio 中,您可以使用包管理器控制台中的 Enable-Migrations 命令添加迁移配置)。

我已经尝试过 Enable-Migrations,但是当我这样做时,我得到了以下错误。

在程序集“大亨”中找不到上下文类型。

然后我尝试了这个

Enable-Migrations -ProjectName <YOUR_PROJECT_NAME> -ContextTypeName <YOUR_CONTEXT_NAME>

但出现以下错误。

“ApplicationDbContext”类型不继承自 DbContext。 DbMigrationsConfiguration.ContextType 属性必须设置为继承自 DbContext 的类型

我正在使用个人用户帐户构建 MVC 应用程序,因此默认创建 ApplicationDbContext 类,该类继承自 IdentityDbContext

请注意,我之前可以进行迁移,但我不确定为什么现在会抛出错误。

【问题讨论】:

  • 如果您已将 DbContext 移出顶级 MVC 应用程序,请记住在运行 Update-Database 等之前选择包含 DbContext 的程序集。

标签: c# asp.net-mvc asp.net-core


【解决方案1】:

如果您的上下文文件的名称是 ApplicationDbContext,请尝试从基类 DbContext 派生它:

public class ApplicationDbContext : DbContext

【讨论】:

    猜你喜欢
    • 2020-10-13
    • 2012-10-13
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    • 2013-05-06
    • 2021-08-31
    • 1970-01-01
    • 2011-12-11
    相关资源
    最近更新 更多