代码之家  ›  专栏  ›  技术社区  ›  Brondahl

什么时候调用EFCore OnModelCreating?

  •  0
  • Brondahl  · 技术社区  · 6 年前

    我知道当你 创造 迁移,但这就是 仅限

    它看起来不像是在请求进入时(在WebApi系统的上下文中)调用它,但是它在服务器启动时会被调用吗?或者在部署过程中的任何时候?或在迁移期间 ?

    询问数据种子的目的,虽然我想知道答案的摘要了。

    2 回复  |  直到 6 年前
        1
  •  3
  •   Brondahl    6 年前

    OnModelCreating 在第一次创建时由框架调用,以使模型和映射到内存中。它提供了一种使用fluentapi配置模型类的方法。因此,您可以在模型类中进行更改,然后添加迁移并更新数据库。生成的快照提供了有关数据库的确切详细信息。在程序执行期间不会调用它。

        2
  •  2
  •   Brondahl    6 年前

    至少,在应用迁移时也会调用该方法,迁移通常配置为在WebHost启动时自动完成。 估计这是因为EF在执行迁移之前尝试验证数据库状态。这种验证似乎需要一个模型来进行比较,因此该方法是运行的。

    可能还有其他情况。