public static void RenameDb(this ModelBuilder modelBuilder, IRenameDbService service) { foreach (var item in modelBuilder.Model.GetEntityTypes()) { RenameEntity(modelBuilder, item, service); } }
public static void RenameEntity(ModelBuilder builder, IMutableEntityType type, IRenameDbService service) { string entityName = service.RenameEntity(type.GetTableName()); builder.Entity(type.ClrType).ToTable(entityName); foreach (var item in type.GetProperties()) { builder.Entity(type.ClrType) .Property( item.ClrType, item.GetColumnName()) .HasColumnName( service.RenameColumn(item.GetColumnName())); } }
public GradeDbContext(DbContextOptions options, IRenameDbService renameDbService, IConfiguration configuration) : base(options) { this.Configuration = configuration; this.RenameDbService = renameDbService; }