Data persistence
Repositories
Aggregate repository
public interface IRepository : IUnitOfWorkProvider, IDisposable
{
void Add<T>(T aggregate) where T : class, IAggregateRoot;
T FirstOrDefault<T>(Expression<Func<T, bool>> predicate) where T : class,
IAggregateRoot, IQueryableEntity;
T First<T>(Expression<Func<T, bool>> predicate)
where T : class, IAggregateRoot, IQueryableEntity;
Task<T> FirstOrDefaultAsync<T>(Expression<Func<T, bool>> predicate)
where T : class, IAggregateRoot, IQueryableEntity;
Task<T> FirstAsync<T>(Expression<Func<T, bool>> predicate)
where T : class, IAggregateRoot, IQueryableEntity;
T Find<T>(Guid id) where T : class, IAggregateRoot;
Task<T> FindAsync<T>(Guid id) where T : class, IAggregateRoot;
IQueryable<T> FindAll<T>()
where T : class, IAggregateRoot, IQueryableEntity;
Task<IList<T>> FindAllAsync<T>()
where T : class, IAggregateRoot, IQueryableEntity;
T Get<T>(Guid id) where T : class, IAggregateRoot;
Task<T> GetAsync<T>(Guid id) where T : class, IAggregateRoot;
IQueryable<T> Where<T>(Expression<Func<T, bool>> predicate)
where T : class, IAggregateRoot, IQueryableEntity;
void Remove<T>(T aggregate) where T : class, IAggregateRoot;
void SaveChanges();
Task SaveChangesAsync();
}CRUD aggregate store
Event sourced aggregate store
CRUD data repository
Repository filters
Event stores
SQL event store
Last updated