Ejemplo n.º 1
0
        public static Migration Load(MigrationMemento memento, IImmutableDictionary <BigInteger, Migration> migrationsByHashCode)
        {
            switch (memento.Type)
            {
            case nameof(UseSchemaMigration):
                return(UseSchemaMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreateTableMigration):
                return(CreateTableMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreateColumnMigration):
                return(CreateColumnMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreatePrimaryKeyMigration):
                return(CreatePrimaryKeyMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreateUniqueIndexMigration):
                return(CreateUniqueIndexMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreateIndexMigration):
                return(CreateIndexMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CreateForeignKeyMigration):
                return(CreateForeignKeyMigration.FromMemento(memento, migrationsByHashCode));

            case nameof(CustomSqlMigration):
                return(CustomSqlMigration.FromMemento(memento, migrationsByHashCode));

            default:
                throw new ArgumentException($"Unknown type {memento.Type}");
            }
        }
        public TableSpecification CreateTable(string tableName)
        {
            var migration = new CreateTableMigration(_migration, tableName, Prerequisites);

            MigrationHistoryBuilder.Append(migration);
            migration.AddToParent();
            return(new TableSpecification(migration, MigrationHistoryBuilder));
        }
        public dynamic CreateTableMigration(CreateTableMigration createTableMigration)
        {
            var create_table_expr = new CreateTableExpression
                                        {
                                            TableName = createTableMigration.TableName,
                                            SchemaName = createTableMigration.SchemaName,
                                        };
            create_table_expr.Columns = createTableMigration.Colunns.Select(build_column_definition).ToList();

            return create_table_expr;
        }
Ejemplo n.º 4
0
 private TableSpecification(CreateTableMigration migration, MigrationHistoryBuilder migrationHistoryBuilder, ImmutableList <Migration> prerequisites) :
     base(migrationHistoryBuilder, prerequisites)
 {
     _migration = migration;
 }
Ejemplo n.º 5
0
 internal TableSpecification(CreateTableMigration migration, MigrationHistoryBuilder migrationHistoryBuilder) :
     base(migrationHistoryBuilder)
 {
     _migration = migration;
 }