18 lines
1.2 KiB
C#
18 lines
1.2 KiB
C#
using System.Linq.Expressions;
|
|
|
|
namespace Netina.Repository.Repositories.Marten;
|
|
|
|
public interface IMartenRepository<TMartenEntity> : IScopedDependency where TMartenEntity : IMartenEntity
|
|
{
|
|
Task<List<TMartenEntity>> GetEntitiesAsync(CancellationToken cancellation = default);
|
|
Task<List<TMartenEntity>> GetEntitiesAsync(Expression<Func<TMartenEntity, bool>> expression, CancellationToken cancellation = default);
|
|
Task<List<TMartenEntity>> GetEntitiesAsync(int page, int count, CancellationToken cancellation);
|
|
Task<List<TMartenEntity>> GetEntitiesAsync(Expression<Func<TMartenEntity, bool>> expression, int page, int count, CancellationToken cancellation);
|
|
|
|
Task<TMartenEntity> GetEntityAsync(Guid id, CancellationToken cancellation = default);
|
|
Task<TMartenEntity?> GetEntityAsync(Expression<Func<TMartenEntity, bool>> expression, CancellationToken cancellation = default);
|
|
|
|
Task AddOrUpdateEntityAsync(TMartenEntity entity, CancellationToken cancellation = default);
|
|
Task UpdateEntityAsync(TMartenEntity entity, CancellationToken cancellation = default);
|
|
Task RemoveEntityAsync(TMartenEntity entity, CancellationToken cancellation = default);
|
|
} |