【问题标题】:Entity Framework Core 1.0 code-first migrations using code?Entity Framework Core 1.0 代码优先迁移使用代码?
【发布时间】:2016-07-17 08:35:33
【问题描述】:

在之前版本的 Entity Framework 代码优先迁移中,可以使用 DbMigrator 类以编程方式控制(例如,检查并应用可用的迁移)。该类是否仍然存在于某个地方,或者是否有功能替代品?我在早期的 RC 版本上发现了一个帖子,该帖子指出了替代品,但 Core 1.0 似乎也缺少了这一点。我可以通过 CLI 毫无问题地控制我的迁移,但我认为将需要一个用于自定义工具场景的代码内解决方案。

【问题讨论】:

标签: entity-framework-core


【解决方案1】:

可以在几个地方找到功能替换,主要是在 Microsoft.EntityFrameworkCore.Migrations 命名空间中的 API。

一些值得一看的地方:

除了IMigrator.Migrate,使用这些API 通常意味着将服务从internal EF Core's service container. 中拉出,这是通过在您的dbcontext 上调用.GetService<TService>() 来完成的。

例子:

var migrator = context.GetService<IMigrator>().Migrate();

【讨论】:

  • GetService 方法不适用于我的上下文。我假设它是一种扩展方法?哪个依赖包和命名空间包含该方法?
  • 它在 Microsoft.EntityFrameworkCore.Infrastructure 命名空间中。您不需要额外的包裹。
猜你喜欢
  • 1970-01-01
  • 2020-04-29
  • 2020-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-02
  • 2017-05-05
  • 1970-01-01
相关资源
最近更新 更多