Exemplo n.º 1
0
        public static ModelBuilder UseSnakeCaseNamingConvention(this ModelBuilder modelBuilder)
        {
            foreach (var entity in modelBuilder.Model.GetEntityTypes())
            {
                entity.SetTableName(NpgsqlSnakeCaseNameTranslator.ConvertToSnakeCase(entity.ClrType.Name));

                foreach (var property in entity.GetProperties())
                {
                    property.SetColumnName(NpgsqlSnakeCaseNameTranslator.ConvertToSnakeCase(property.GetColumnName()));
                }
            }

            foreach (var entity in modelBuilder.Model.GetEntityTypes())
            {
                foreach (var key in entity.GetKeys())
                {
                    key.SetName(GetDefaultName(key));
                }

                foreach (var key in entity.GetForeignKeys())
                {
                    key.SetConstraintName(GetDefaultName(key));
                }

                foreach (var index in entity.GetIndexes())
                {
                    index.SetName(GetDefaultName(index));
                }
            }

            return(modelBuilder);
        }
Exemplo n.º 2
0
 public static string ToSnakeCase(this string input) => NpgsqlSnakeCaseNameTranslator.ConvertToSnakeCase(input);