Namespace Stratara.Abstractions.Persistence
Classes
- ConcurrencyConflictException
Thrown by an ITransaction implementation when an optimistic-concurrency conflict is detected during commit (i.e. the row was modified or deleted by another concurrent caller between the entity load and the save).
Interfaces
- IDbResolver
Resolves the connection string used by the current request / scope. Allows hosts to implement per-tenant / per-region DB routing without coupling repositories to the resolver implementation.
- IReadUnitOfWork
Read-side unit of work. Used for queries that need transactional consistency across multiple repository reads (e.g. computing aggregations over a snapshot of the read-store).
- ITransaction
A scoped database transaction. Dispose to roll back implicitly; call SaveChangesAsync(CancellationToken) to commit.
- IUnitOfWork
Common base for read + write units-of-work. Provides explicit transaction control — callers obtain an ITransaction, run a sequence of repository operations, then commit via SaveChangesAsync(CancellationToken).
- IWriteUnitOfWork
Write-side unit of work — exposes the repositories that participate in an event-sourced write (event stream, snapshots, hash anchors, command audit, outbox).