public async Task UpdateAllAsync(Action <T> everyItemCallback)
 {
     QueriesCount++;
     await CurrentWorkSet.ForEachAsync(everyItemCallback);
 }
 public async Task <ImmutableList <T> > SelectAsImmutableAsync()
 {
     QueriesCount++;
     return(await Task.Run(() => CurrentWorkSet.ToList().ToImmutableList()));
 }
 public void UpdateAll(Action <T> everyItemCallback)
 {
     QueriesCount++;
     CurrentWorkSet.ForEachAsync(everyItemCallback);
 }
 public async Task <IQueryable <T> > WhereAsync(Expression <Func <T, bool> > predicate)
 {
     QueriesCount++;
     return(await Task.Run(() => CurrentWorkSet.Where(predicate)));
 }
 public ImmutableList <T> SelectAsImmutable()
 {
     QueriesCount++;
     return(CurrentWorkSet.ToList().ToImmutableList());
 }
 public IQueryable <T> Where(Expression <Func <T, bool> > predicate)
 {
     QueriesCount++;
     return(CurrentWorkSet.Where(predicate));
 }
 public async Task <T> SelectOneAsync(Expression <Func <T, bool> > predicate)
 {
     QueriesCount++;
     return(await CurrentWorkSet.FirstOrDefaultAsync(predicate));
 }
 public T SelectOne(Expression <Func <T, bool> > predicate)
 {
     QueriesCount++;
     return(CurrentWorkSet.FirstOrDefault(predicate));
 }
 public async Task <List <T> > SelectAllAsync()
 {
     QueriesCount++;
     return(await CurrentWorkSet.ToListAsync());
 }
 public List <T> SelectAll()
 {
     QueriesCount++;
     return(CurrentWorkSet.ToList());
 }