/// <inheritdoc />
        public void ProcessResults()
        {
            ThrowIfNotInitialized();

            for (var i = 0; i < _queryInfos.Count; i++)
            {
                var queryInfo = _queryInfos[i];
                if (_subselectResultKeys[i] != null)
                {
                    queryInfo.Loader.CreateSubselects(_subselectResultKeys[i], queryInfo.Parameters, Session);
                }

                if (queryInfo.IsCacheable)
                {
                    // This transformation must not be applied to ResultToCache.
                    queryInfo.Result =
                        queryInfo.Loader.TransformCacheableResults(
                            queryInfo.Parameters, queryInfo.CacheKey.ResultTransformer, queryInfo.Result);
                }
            }
            AfterLoadCallback?.Invoke(GetResults());
        }
 public async Task ExecuteNonBatchedAsync(CancellationToken cancellationToken)
 {
     cancellationToken.ThrowIfCancellationRequested();
     _finalResults = await(GetResultsNonBatchedAsync(cancellationToken)).ConfigureAwait(false);
     AfterLoadCallback?.Invoke(_finalResults);
 }
 /// <inheritdoc />
 public void ExecuteNonBatched()
 {
     _finalResults = GetResultsNonBatched();
     AfterLoadCallback?.Invoke(_finalResults);
 }