Table of Contents

Interface IAggregateRepository<TEntity, TKey, TMarker>

Namespace
Savvyio.Extensions.DependencyInjection.Domain
Assembly
Savvyio.Extensions.DependencyInjection.Domain.dll

Defines a generic way to support multiple implementations of persistent repositories (CRUD) that is optimized for Domain Driven Design.

public interface 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

TEntity

The type of the entity.

TKey

The type of the key that uniquely identifies the entity.

TMarker

The type used to mark the implementation that this repository represents. Optimized for Microsoft Dependency Injection.

Inherited Members

See Also

IAggregateRepository<TEntity, TKey>
IPersistentRepository<TEntity, TKey, TMarker>