public override async Task <bool> NextAsync(CancellationToken cancellationToken = default) { VerifyNotDisposed(); if (Context.Command.IsCanceled) { return(false); } if (Processor is CountFunctionProcessor processor) { if (processor.Read) { return(false); } processor.Read = true; _current = new object[] { _requester.RequestCount() }; return(true); } var flag = await _requester.NextAsync(cancellationToken); Processor.Current = _requester.Current; if (Context.DocumentFilters != null && Processor.Current != null) { foreach (var documentFilter in Context.DocumentFilters) { documentFilter.Filter(TableName, Processor.Current); } } _current = flag ? Processor.Process() : null; return(flag); }