Class EfCoreAggregateRepository<TEntity, TKey, TMarker>
- Namespace
- Savvyio.Extensions.DependencyInjection.EFCore.Domain
- Assembly
- Savvyio.Extensions.DependencyInjection.EFCore.Domain.dll
Provides an implementation of the EfCoreRepository<TEntity, TKey> that is optimized for Domain Driven Design.
public class EfCoreAggregateRepository<TEntity, TKey, TMarker> : EfCoreRepository<TEntity, TKey>, IAggregateRepository<TEntity, TKey, TMarker>, IAggregateRepository<TEntity, TKey>, IPersistentRepository<TEntity, TKey, TMarker>, IPersistentRepository<TEntity, TKey>, IWritableRepository<TEntity, TKey, TMarker>, IWritableRepository<TEntity, TKey>, IReadableRepository<TEntity, TKey, TMarker>, IReadableRepository<TEntity, TKey>, ISearchableRepository<TEntity, TKey, TMarker>, ISearchableRepository<TEntity, TKey>, IDeletableRepository<TEntity, TKey, TMarker>, IRepository<TEntity, TKey, TMarker>, IDependencyInjectionMarker<TMarker>, IDeletableRepository<TEntity, TKey>, IRepository<TEntity, TKey> where TEntity : class, IAggregateRoot<IDomainEvent, TKey>
Type Parameters
TEntityThe type of the entity.
TKeyThe type of the key that uniquely identifies the entity.
TMarkerThe type used to mark the implementation that this repository represents. Optimized for Microsoft Dependency Injection.
- Inheritance
-
EfCoreRepository<TEntity, TKey>EfCoreAggregateRepository<TEntity, TKey, TMarker>
- Implements
-
IAggregateRepository<TEntity, TKey, TMarker>IAggregateRepository<TEntity, TKey>IPersistentRepository<TEntity, TKey, TMarker>IPersistentRepository<TEntity, TKey>IWritableRepository<TEntity, TKey, TMarker>IWritableRepository<TEntity, TKey>IReadableRepository<TEntity, TKey, TMarker>IReadableRepository<TEntity, TKey>ISearchableRepository<TEntity, TKey, TMarker>ISearchableRepository<TEntity, TKey>IDeletableRepository<TEntity, TKey, TMarker>IRepository<TEntity, TKey, TMarker>IDependencyInjectionMarker<TMarker>IDeletableRepository<TEntity, TKey>IRepository<TEntity, TKey>
- Inherited Members
Constructors
EfCoreAggregateRepository(IEfCoreDataSource<TMarker>)
Initializes a new instance of the EfCoreRepository<TEntity, TKey, TMarker> class.
public EfCoreAggregateRepository(IEfCoreDataSource<TMarker> source)
Parameters
sourceIEfCoreDataSource<TMarker>The IEfCoreDataSource<TMarker> that handles actual I/O communication with a source of data.
See Also
EfCoreRepository<TEntity, TKey>
IPersistentRepository<TEntity, TKey, TMarker>