Для IEntityTypeConfiguration
это позволяет сконфигурировать тип сущности в отдельный класс, и вы не сможете использовать его для другой модели.
Как правило, существует два способа настройки модели: IEntityTypeConfiguration
в отдельном файле и прямая настройка в OnModelCreating
.
При наличии множества моделей рекомендуется использовать IEntityTypeConfiguration
для отдельных конфигураций, которые легко настраиваются. Если вы просто хотите избежать настройки modelBuilder.ApplyConfiguration(new CarConfiguration());
, вы можете попробовать как modelBuilder.ApplyEntityTypeConfigurations(Assembly.GetExecutingAssembly());
.
Если вы хотите настроить одно место, вы можете следовать OnModelCreating
как
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<Car>(c =>
{
c.ToTable("Car");
c.HasKey(x => x.Id);
c.Property(x => x.Id).HasColumnName("Id").ValueGeneratedOnAdd();
c.HasOne(x => x.Owner);
});
}