EF Core Mapping EntityTypeConfiguration

Since EF Core 2.0 there is IEntityTypeConfiguration<TEntity>. You can use it like this:

class CustomerConfiguration : IEntityTypeConfiguration<Customer>
{
  public void Configure(EntityTypeBuilder<Customer> builder)
  {
     builder.HasKey(c => c.AlternateKey);
     builder.Property(c => c.Name).HasMaxLength(200);
   }
}

...
// OnModelCreating
builder.ApplyConfiguration(new CustomerConfiguration());

More on this and other new features introduced in 2.0 can be found here.

Leave a Comment