Код: Выделить всё
public class AppDbContext: DbContext {
protected override void OnModelCreating(ModelBuilder modelBuilder) {
modelBuilder
.Entity()
.HasKey(user => user.Id)
.HasName("pk_users_is");
// here would be thousands of lines for other entities
base.OnModelCreating(modelBuilder);
}
public DbSet Users { get; set; }
}
Код: Выделить всё
public class UserEntity {
public int Id { get; set; }
public string Name { get; set; } = "";
public static void Configure(EntityTypeBuilder builder) {
builder
.HasKey(user => user.Id)
.HasName("pk_users_id");
}
}
Код: Выделить всё
public class AppDbContext: DbContext {
protected override void OnModelCreating(ModelBuilder modelBuilder) {
UserEntity.Configure(modelBuilder.Entity());
// here call Configure for every entity, similarly as above
base.OnModelCreating(modelBuilder);
}
public DbSet Users { get; set; }
}
Каким может быть разумный способ сохранить каждую конфигурацию объекта в свободном API, этого нельзя достичь с помощью атрибутов рядом с сущностью, а не всего в OnModelCreating?
Подробнее здесь: https://stackoverflow.com/questions/786 ... -framework