public async Task ChunkAsync <T>( Query query, int chunkSize, Func <IEnumerable <T>, int, bool> func, IDbTransaction transaction = null, int?timeout = null, CancellationToken cancellationToken = default ) { PaginationResult <T> result = await PaginateAsync <T>(query, 1, chunkSize, transaction, cancellationToken : cancellationToken); if (!func(result.List, 1)) { return; } while (result.HasNext) { result = result.Next(transaction); if (!func(result.List, result.Page)) { return; } } }
public void Chunk <T>(Query query, int chunkSize, Action <IEnumerable <T>, int> action, IDbTransaction transaction = null, int?timeout = null) { PaginationResult <T> result = Paginate <T>(query, 1, chunkSize, transaction, timeout); action(result.List, 1); while (result.HasNext) { result = result.Next(transaction); action(result.List, result.Page); } }
public async Task ChunkAsync <T>( Query query, int chunkSize, Action <IEnumerable <T>, int> action, IDbTransaction transaction = null, int?timeout = null, CancellationToken cancellationToken = default ) { PaginationResult <T> result = await PaginateAsync <T>(query, 1, chunkSize, transaction, timeout, cancellationToken); action(result.List, 1); while (result.HasNext) { result = result.Next(transaction); action(result.List, result.Page); } }
public void Chunk <T>( Query query, int chunkSize, Func <IEnumerable <T>, int, bool> func, IDbTransaction transaction = null, int?timeout = null) { PaginationResult <T> result = Paginate <T>(query, 1, chunkSize, transaction, timeout); if (!func(result.List, 1)) { return; } while (result.HasNext) { result = result.Next(transaction); if (!func(result.List, result.Page)) { return; } } }