private async Task <Models.Entities.Census> ResolveEntitiesAsync <TContext>(string[] entityIds, ResolveFieldContext <TContext> context)
        {
            var aggregationRequest = DeserializeAggregationRequests(context);

            var request = new LoadCensusRequest
            {
                EntityReferences = new[]
                {
                    new AggregateEntityReference
                    {
                        AdapterRecordReferences = entityIds.Select(id =>
                                                                   new EntityReference
                        {
                            SourceSystemId   = id,
                            SourceSystemName = SourceSystemNames.IStore,
                        }).ToArray(),
                    },
                },
                AggregatesRequest = aggregationRequest,
                Live = _executionContextManager.GraphExecutionContext.QueryLive,
            };
            var censuses = await _entityRepository.LoadCensusAsync(request, context.CancellationToken);

            return(censuses.SquashedEntityResults.FirstOrDefault()?.SquashedEntity);
        }
Ejemplo n.º 2
0
 public async Task <EntityCollection <Census> > LoadCensusAsync(LoadCensusRequest request, CancellationToken cancellationToken)
 {
     return(await LoadAsync <Census>(request, cancellationToken));
 }