EF Core是否可以更改OnModelCreating中的配置顺序?

时间:2017-09-21 11:10:07

标签: entity-framework entity-framework-core

我们假设,我们已经应用了以下模型配置和迁移

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);

    modelBuilder.Entity<Customer>()...
    modelBuilder.Entity<Property>()...
    ...
    modelBuilder.Entity<Address>();
}

是否在当前配置的中间或末尾添加新的实体配置有什么区别?还有什么,当配置顺序通过重构完全改变时,它是否会影响迁移?

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);


    ...
    modelBuilder.Entity<Contact>();
    ...
    modelBuilder.Entity<Address>();
    ...
    modelBuilder.Entity<Customer>()...
    modelBuilder.Entity<Property>()...

}

1 个答案:

答案 0 :(得分:1)

对于明确的流畅配置,顺序无关紧要,实体配置将覆盖任何约定。

但是,如果您要添加自定义约定,则订单可能很重要,如约定订单部分中所述:http://entityframework.codeplex.com/wikipage?title=Custom%20Conventions

大卫