public Pagination(uint pageSize, GetSliceAsync <T> getSliceAsync)
            {
                checked
                {
                    this.pageSize = (int)pageSize;
                }

                this.getSliceAsync = getSliceAsync;
            }
            private Slicing(int sliceSize, long skipItems, GetSliceAsync <T> getSliceAsync)
            {
                if (skipItems < 0)
                {
                    throw Errors.ValueShouldBeGreaterThan(nameof(skipItems), skipItems, -1);
                }

                this.sliceSize     = sliceSize;
                this.skipItems     = skipItems;
                this.getSliceAsync = getSliceAsync;
            }
 public EntityList(GetSliceAsync <T> getSlice)
 {
     this.getSlice = getSlice ?? throw new ArgumentNullException(nameof(getSlice));
 }