【问题标题】:Migration "our target project 'xxx' doesn't match your migrations assembly 'xxx'" using aspnet Core 1.0 RC2 -使用 aspnet Core 1.0 RC2 迁移“我们的目标项目 'xxx' 与您的迁移程序集 'xxx' 不匹配”-
【发布时间】:2016-09-26 05:25:08
【问题描述】:

我正在尝试为程序集中的第二个 DBContext 构建迁移类。使用这个命令:Add-Migration AlertInitial -c Axper.Data.Persistence.Context.AlertContext 并使用“包控制台管理”

但它失败并给我这个错误:

您的目标项目“AxPortal”与您的迁移程序集不匹配 'Axper.Data.Persistence'。更改您的目标项目或更改 您的迁移程序集。通过使用更改您的迁移程序集 DbContextOptionsBuilder。例如。 options.UseSqlServer(connection, b => b.MigrationsAssembly(“AxPortal”))。默认情况下,迁移 assembly 是包含 DbContext 的程序集。

使用 包管理器控制台的默认项目下拉列表,或通过 从包含迁移的目录执行“dotnet ef” 项目。

我不知道这个错误是什么意思,以及如何解决它。 有人可以帮忙吗?

【问题讨论】:

  • 我喜欢但是持有迁移类的项目是一个类库。从 RC2 开始,类库还不被支持。

标签: c# entity-framework entity-framework-migrations .net-core-rc2


【解决方案1】:

由于未知原因,我的项目/解决方案文件夹有点损坏。我删除了我并重新克隆了 Git 存储库。我终于可以迁移了。

【讨论】:

  • 这是我的问题。为了确保我关闭了解决方案,删除了 .vs、bin 和 obj 文件夹,然后重新打开了解决方案。问题解决了。
【解决方案2】:

options.UseSqlServer(connection, b => b.MigrationsAssembly(“WebApplication3”))。默认情况下,迁移 assembly 是包含 DbContext 的程序集。

services.AddDbContext<ComDbContext>(options =>
            {
                options.UseSqlServer("server=.\\sqlexpress;database=dsafdsaf;uid=sa;pwd=123456", b => b.MigrationsAssembly("WebApplication3"));
            });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    • 1970-01-01
    • 1970-01-01
    • 2020-08-23
    • 1970-01-01
    • 2019-02-11
    相关资源
    最近更新 更多