public PostgreSQLDatabase() : base(_name, _friendlyName) { _rewriter = new SnakeCaseNameRewriter(CultureInfo.InvariantCulture); }
public static void NamingConventionsRewriteName(this ModelBuilder modelBuilder, DbNamingConvention namingConvention = DbNamingConvention.Default, CultureInfo culture = null) { if (namingConvention == DbNamingConvention.Default) { return; } INameRewriter nameRewriter = null; culture ??= CultureInfo.InvariantCulture; switch (namingConvention) { case DbNamingConvention.Default: break; case DbNamingConvention.SnakeCase: nameRewriter = new SnakeCaseNameRewriter(culture); break; case DbNamingConvention.LowerCase: nameRewriter = new LowerCaseNameRewriter(culture); break; case DbNamingConvention.UpperCase: nameRewriter = new UpperCaseNameRewriter(culture); break; case DbNamingConvention.UpperSnakeCase: nameRewriter = new UpperSnakeCaseNameRewriter(culture); break; case DbNamingConvention.CamelCase: nameRewriter = new CamelCaseNameRewriter(culture); break; default: break; } foreach (var entity in modelBuilder.Model.GetEntityTypes()) { entity.SetTableName(nameRewriter.RewriteName(entity.GetTableName())); foreach (var property in entity.GetProperties()) { // property.SetColumnName(nameRewriter.RewriteName(property.GetColumnName())); var columnName = property.GetColumnName(StoreObjectIdentifier.Table(entity.GetTableName(), null)); property.SetColumnName(nameRewriter.RewriteName(columnName)); } foreach (var key in entity.GetKeys()) { key.SetName(nameRewriter.RewriteName(key.GetName())); } foreach (var key in entity.GetForeignKeys()) { key.SetConstraintName(nameRewriter.RewriteName(key.GetConstraintName())); } foreach (var index in entity.GetIndexes()) { // index.SetName(nameRewriter.RewriteName(index.GetName()); index.SetDatabaseName(nameRewriter.RewriteName(index.GetDatabaseName())); } } }
public NameRewritingConvention(INameRewriter nameRewriter) => _namingNameRewriter = nameRewriter;