Class MigrationGenerator<TState>
Manages the stateful part of migration generation, using a dialect to produce the actual per-event SQL
public class MigrationGenerator<TState> : MigrationGenerator where TState : IDDLState<TState>
Type Parameters
TState
- Inheritance
-
MigrationGenerator<TState>
- Inherited Members
Constructors
MigrationGenerator(Func<TState, IDDLDialect>, params IEvent[])
public MigrationGenerator(Func<TState, IDDLDialect> getDialect, params IEvent[] history)
Parameters
getDialectFunc<TState, IDDLDialect>historyIEvent[]
Methods
GenerateDDL(IEnumerable<IEvent>)
Add events to the current migration and emit SQL
public override IReadOnlyList<string> GenerateDDL(IEnumerable<IEvent> es)
Parameters
esIEnumerable<IEvent>
Returns
GenerateTriggers()
Emit trigger SQL which should be executed before and after a migration's DDL
public override (IReadOnlyList<IReadOnlyList<string>> before, IReadOnlyList<IReadOnlyList<string>> after) GenerateTriggers()
Returns
GetDialect()
public override IDDLDialect GetDialect()
Returns
InitialSetup()
When iterated, emit rerunnable db-setup scripts
public override IEnumerable<IEnumerable<string>> InitialSetup()
Returns
SkipDDL(params IEvent[])
Adds some events to the current migration without emitting the corresponding SQL
public override void SkipDDL(params IEvent[] es)
Parameters
esIEvent[]