EntityFramework 6.x

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

   modelBuilder.Configurations.AddFromAssembly(typeof(MyDbContext).Assembly);
}

 EF Core <= 2.1

public static class ModelBuilderExtensions
{
    public static void ApplyAllConfigurations(this ModelBuilder modelBuilder)
    {
        var typesToRegister = Assembly.GetExecutingAssembly().GetTypes().Where(t => t.GetInterfaces()
            .Any(gi => gi.IsGenericType && gi.GetGenericTypeDefinition() == typeof(IEntityTypeConfiguration<>))).ToList();

        foreach (var type in typesToRegister)
        {
            dynamic configurationInstance = Activator.CreateInstance(type);
            modelBuilder.ApplyConfiguration(configurationInstance);
        }
    }
}

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

   modelBuilder.ApplyAllConfigurations();
}

 EF Core >= 2.2

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

   modelBuilder.ApplyConfigurationsFromAssembly(typeof(UserConfiguration).Assembly); // Here UseConfiguration is any IEntityTypeConfiguration
}

 转自:https://stackoverflow.com/questions/51842709/modelbuilder-configurations-addfromassembly-in-ef-core

 

相关文章:

  • 2021-09-23
  • 2021-08-08
  • 2022-01-06
  • 2022-12-23
  • 2022-12-23
  • 2021-11-05
  • 2022-12-23
  • 2022-01-05
猜你喜欢
  • 2021-12-14
  • 2022-02-12
  • 2021-11-29
  • 2022-02-02
  • 2022-02-10
  • 2021-11-01
  • 2021-11-01
相关资源
相似解决方案