Robotico.Repository.InMemory 0.1.3
Robotico.Repository.InMemory
In-memory implementation of IRepository<TEntity, TId>, IAsyncRepository<TEntity, TId>, and IUnitOfWork using a ConcurrentDictionary store.
Which interface?
| Host / scenario | Prefer |
|---|---|
| Async test / host code | IAsyncRepository<,> |
| Purely synchronous tests | Either; both are non-blocking for this adapter |
Unit of work profile (IUnitOfWorkCapabilities)
UnitOfWorkCommitMode |
NoOpCommitSuccess |
CommitCoordinatesDomainWrites |
no — mutations apply immediately in the repository |
SupportsTransactions |
no |
For tests and single-process scenarios only. For production persistence use Robotico.Repository.EntityFrameworkCore, Robotico.Repository.MongoDb, Robotico.Repository.CosmosDb, or Robotico.Repository.Dapper.
Benchmarks (optional)
Sync vs async IRepository / IAsyncRepository overhead on this adapter (no I/O): see benchmarks/Robotico.Repository.InMemory.Benchmarks. Run: dotnet run -c Release --project benchmarks/Robotico.Repository.InMemory.Benchmarks/Robotico.Repository.InMemory.Benchmarks.csproj.
License
See repository license file.
No packages depend on Robotico.Repository.InMemory.
.NET 8.0
- Robotico.Domain (>= 1.0.2)
- Robotico.Repository (>= 1.2.1)
- Robotico.Result (>= 1.0.2)
.NET 10.0
- Robotico.Domain (>= 1.0.2)
- Robotico.Repository (>= 1.2.1)
- Robotico.Result (>= 1.0.2)