public async Task <List <Tdb> > GetPagedResultsAsync(FilterDefinition <Tdb> primaryFilters, RepositoryPaging paging)
        {
            SetPaging(paging);

            FilterDefinition <Tdb> totalFilter = PreparePagingFilter(primaryFilters, paging);
            var countTask = Collection.CountDocumentsAsync(totalFilter);

            var sorting = SetSorting(paging);

            var findOptions = new FindOptions <Tdb, Tdb> {
                Sort = sorting
            };
            var collection = await Collection.FindAsync(totalFilter, findOptions);

            var skip   = (paging.CurrentPage - 1) * paging.PageSize;
            var result = collection.ToEnumerable().Skip(skip).Take(paging.PageSize).ToList();

            paging.TotalItems = await countTask;
            return(result);
        }