我覆盖了OnModelCreating,并且在方法中有一行base.OnModelCreating(modelBuilder);

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);
}


在查看有关如何实现此功能的代码示例和手册时,我是否需要它感到困惑。有时它在那里,有时没有。有时在方法开始时,在其他时候结束。

我该怎么办?

最佳答案

根据documentation,直接从DbContext类继承并不重要:


当派生上下文的模型已初始化时,但在模型被锁定并用于初始化上下文之前,将调用此方法。此方法的默认实现不执行任何操作,但是可以在派生类中重写此方法,以便可以在锁定模型之前对其进行进一步配置。


换句话说,由于is并没有定义,因此调用base.OnModelCreating是没有必要的,但是同时调用它不会造成伤害-这就是为什么有时候它在那里,有时候没有。有时在方法开始时,在其他时候结束。

关于entity-framework - base.OnModelCreating(modelBuilder)是否必要?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39576176/

10-09 15:48