【问题标题】:Run ef migrations script on separate projects在单独的项目上运行 ef 迁移脚本
【发布时间】:2020-08-07 22:06:01
【问题描述】:

我有一个使用 Entity Framework 的 .NET Core 3.1 Web 应用程序。 WebApp 在一个项目 Command.Api 中,而带有 DBContext 类的 EF 在另一个项目 Command.Core 中。

我想通过运行命令来创建迁移脚本

dotnet ef migrations script

不幸的是我得到了错误

System.Reflection.TargetInvocationException:已抛出异常 通过调用的目标。 ---> System.NullReferenceException: 对象引用未设置为对象的实例。

发生这种情况是因为 DBContext 类位于与 program.cs 不同的项目中。 当 DBContext 类与 program.cs 在同一个项目中时,脚本可以正常工作。

任何帮助将不胜感激

【问题讨论】:

  • 在运行迁移命令时,您是否选择了Command.Core 项目?
  • 我在同一个文件夹中运行命令,或者如果我从解决方案文件夹运行命令,我指定项目的名称。在这两种情况下,结果都是一样的。

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


【解决方案1】:

我们必须指定启动项目

dotnet ef migrations script --project Command.Core --startup-project Command.Api

【讨论】:

    猜你喜欢
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 2018-11-06
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 2022-08-05
    • 2021-10-17
    相关资源
    最近更新 更多