SqlProjectionStoreType
PackageFCQRS
Stores one durable, contiguous sequence position per projection and persistence ID.
Connection factories must return new, unopened connections. The journal factory must
read the authoritative journal database, not a replica. Read-model writes must use the
connection and transaction supplied to the projection handler, so they commit with progress.
Journal history must remain available until every required projection has processed it.
Table and column names are quoted as individual identifiers; schemas are separate arguments.
The progress table and its companion lock table are owned by FCQRS and must not be edited.
Journal source settings are compared conservatively. Password changes are excluded from the
persisted source binding so a new store can resume existing progress after credential rotation.
Specification
Kind
Type
Members
4
Examples
0
``.ctor``Signature
SqlProjectionStore(dialect, journalConnectionFactory, projectionConnectionFactory)
``.ctor``Signature
SqlProjectionStore(dialect, connectionFactory)
``.ctor``Signature
SqlProjectionStore(dialect, journalConnectionFactory, projectionConnectionFactory, ?journalTable, ?journalSchema, ?progressTable, ?progressSchema, ?journalPersistenceIdColumn, ?journalSequenceNumberColumn)
DialectSignature
this.Dialect
Summary
| Name | Signature | Synopsis |
|---|---|---|
| ``.ctor`` | SqlProjectionStore(dialect, journalConnectionFactory, projectionConnectionFactory) | Uses separate journal and read-model databases with the default table mappings. |
| ``.ctor`` | SqlProjectionStore(dialect, connectionFactory) | Uses one database for both the journal and the transactional read model. |
| ``.ctor`` | SqlProjectionStore(dialect, journalConnectionFactory, projectionConnectionFactory, ?journalTable, ?journalSchema, ?progressTable, ?progressSchema, ?journalPersistenceIdColumn, ?journalSequenceNumberColumn) | No description available. |
| Dialect | this.Dialect | The SQL dialect used by this store. |
Uses separate journal and read-model databases with the default table mappings.
Parameters
| Name | Type | Description |
|---|---|---|
| dialect | ProjectionSqlDialect | |
| journalConnectionFactory | Func<DbConnection> | |
| projectionConnectionFactory | Func<DbConnection> |
Returns
SqlProjectionStore
Uses one database for both the journal and the transactional read model.
Parameters
| Name | Type | Description |
|---|---|---|
| dialect | ProjectionSqlDialect | |
| connectionFactory | Func<DbConnection> |
Returns
SqlProjectionStore
SqlProjectionStore(dialect, journalConnectionFactory, projectionConnectionFactory, ?journalTable, ?journalSchema, ?progressTable, ?progressSchema, ?journalPersistenceIdColumn, ?journalSequenceNumberColumn)
MemberParameters
| Name | Type | Description |
|---|---|---|
| dialect | ProjectionSqlDialect | |
| journalConnectionFactory | Func<DbConnection> | |
| projectionConnectionFactory | Func<DbConnection> | |
| journalTable | string | |
| journalSchema | string | |
| progressTable | string | |
| progressSchema | string | |
| journalPersistenceIdColumn | string | |
| journalSequenceNumberColumn | string |
Returns
SqlProjectionStore