Beispiel #1
0
        public async Task <IDictionary <Guid, Provider> > Execute(
            DocumentClient client,
            Configuration configuration,
            GetProvidersByIds request)
        {
            var collectionUri = UriFactory.CreateDocumentCollectionUri(
                configuration.DatabaseId,
                configuration.ProviderCollectionName);

            var query = client.CreateDocumentQuery <Provider>(collectionUri, new FeedOptions()
            {
                EnableCrossPartitionQuery = true
            })
                        .Where(p => request.ProviderIds.Contains(p.Id))
                        .AsDocumentQuery();

            var results = await query.FetchAll();

            var resultsDict = results.ToDictionary(r => r.Id, r => r);

            return(resultsDict);
        }
Beispiel #2
0
        public async Task <IReadOnlyDictionary <Guid, Provider> > Execute(SqlTransaction transaction, GetProvidersByIds query)
        {
            var sqlParameters = new
            {
                ProviderIds = TvpHelper.CreateGuidIdTable(query.ProviderIds)
            };

            var sql = @$ "
SELECT  {nameof(Provider.ProviderId)},
        public async Task <IReadOnlyDictionary <Guid, Provider> > Execute(SqlTransaction transaction, GetProvidersByIds query)
        {
            var sqlParameters = new
            {
                ProviderIds = TvpHelper.CreateGuidIdTable(query.ProviderIds)
            };

            var sql = @$ "
SELECT  ProviderId,
        Ukprn,
        ProviderName,
        ProviderType,
        Alias,
        DisplayNameSource,
        ApprenticeshipQAStatus,
        BulkUploadInProgress,
        BulkUploadPublishInProgress,
        BulkUploadStartedDateTime,
        BulkUploadTotalRowCount,
        LearnerSatisfaction,
        EmployerSatisfaction
FROM    Pttcd.Providers
WHERE   {nameof(Provider.ProviderId)} IN (SELECT * FROM @{nameof(sqlParameters.ProviderIds)})";
 public IDictionary <Guid, Provider> Execute(InMemoryDocumentStore inMemoryDocumentStore, GetProvidersByIds request) =>
 inMemoryDocumentStore.Providers.All
 .Where(p => request.ProviderIds.Contains(p.Id))
 .ToDictionary(p => p.Id, p => p);