Namespace eQuantic.Core.Data.Migration
Classes
- AddFieldOperation
Adds the column/field for an entity member to an existing table (document stores gain fields on write).
- AppliedMigration
A migration that has been applied, as recorded in the IMigrationHistory.
- ConvertFieldOperation
Converts a field's stored type (schema/type evolution) across existing documents.
- DropFieldOperation
Drops a stored column/field by its stored name (the CLR member is usually already gone).
- EnsureCollectionOperation
Ensures the collection/container for the entity exists.
- EnsureIndexOperation
Ensures an index (single-key or composite) exists.
- FieldSet
A single assignment applied by an UpdateOperation.
- IndexKey
A single key of an index: a typed member selector and its direction.
- Migration
The base class a migration derives from. Mark it with MigrationAttribute and declare the work fluently in Up(IMigrationBuilder); the IMigrationRunner discovers it, orders it by timestamp, and applies the pending ones through the provider's IMigrationExecutor.
- MigrationAttribute
Marks a class as a data migration and records its title and timestamp.
- MigrationBuilder
The default recording IMigrationBuilder: the fluent calls simply capture MigrationOperations, which a provider's IMigrationExecutor later applies.
- MigrationOperation
A single, provider-agnostic operation declared by a Migration through the fluent IMigrationBuilder. A provider's IMigrationExecutor knows how to apply it.
- RenameFieldOperation
Renames a field across existing documents.
- RunOperation
An arbitrary escape-hatch operation with direct access to the provider's execution context.
- UpdateOperation
Applies a set of field assignments to the documents matching a predicate (a data migration).
Interfaces
- ICollectionMigration<TEntity>
Fluent, typed operations against a single entity's collection/container.
- IIndexKeyBuilder<TEntity>
Builds the ordered keys of a composite index with typed selectors.
- IIndexOptions<TEntity>
Fluent options for a single-key index — providers reject the ones they cannot build, with guidance.
- IMigrationBuilder
The fluent, typed surface a Migration declares its work through — no query strings, no field-name literals. Every operation is recorded and later applied by a provider's IMigrationExecutor.
- IMigrationExecutionContext
The provider-specific context handed to a RunOperation escape hatch. Providers expose their native handle on it (e.g. the MongoDB database) through their own extension.
- IMigrationExecutor
Applies the provider-agnostic MigrationOperations declared by a migration to the underlying store (creating collections/containers and indexes, converting and renaming fields, running data updates).
- IMigrationHistory
Tracks which migrations have already been applied, so the IMigrationRunner never applies one twice. A provider implements it over its own store (e.g. a dedicated MongoDB collection or Cosmos container), which also makes migration state visible and queryable.
- IMigrationRunner
Discovers the Migration types marked with MigrationAttribute, orders them by their timestamp, skips the ones already recorded in the IMigrationHistory, applies the rest in order (recording each as it succeeds) and reports how many ran.
- IUpdateBuilder<TEntity>
Builds the assignments of an Update(Expression<Func<TEntity, bool>>, Action<IUpdateBuilder<TEntity>>) with typed selectors.
Enums
- IndexMethod
A specialized index structure a provider may support.
- MigrationFieldType
A provider-agnostic stored field type, used to describe a type/schema evolution.