public async Task <IActionResult> GetAllStores( [HttpTrigger(AuthorizationLevel.Function, "get", Route = "stores")] HttpRequest req, ILogger log) { log.LogInformation($"C# HTTP trigger {nameof(GetAllStores)} function processed a request."); var documents = await _storeRepository.FindAsync(); return(new OkObjectResult(documents)); }
public async static Task <IList <T> > FindAsync <T, U>(this ICosmosDbRepository <T> repo, IList <U> partitionKeys, Expression <Func <T, bool> > predicate = null, Func <IQueryable <T>, IQueryable <T> > clauses = null, FeedOptions feedOptions = null) { var results = (await Task.WhenAll( partitionKeys.Select(partitionKey => repo.FindAsync(predicate, clauses, SetPartitionKey(partitionKey, feedOptions))))) .SelectMany(a => a); if (results != default && clauses != default) { results = clauses.Invoke(results.AsQueryable()); } return(results?.ToList()); }
public static Task <CosmosDbRepositoryPagedResults <T> > FindAsync <T, U>(this ICosmosDbRepository <T> repo, U partitionKey, int pageSize, string continuationToken, Expression <Func <T, bool> > predicate = null, Func <IQueryable <T>, IQueryable <T> > clauses = null, FeedOptions feedOptions = null) { feedOptions = SetPartitionKey(partitionKey, feedOptions); return(repo.FindAsync(pageSize, continuationToken, predicate, clauses, feedOptions)); }
public static Task <IList <T> > FindAsync <T, U>(this ICosmosDbRepository <T> repo, U partitionKey, Expression <Func <T, bool> > predicate = null, Func <IQueryable <T>, IQueryable <T> > clauses = null, FeedOptions feedOptions = null) { feedOptions = SetPartitionKey(partitionKey, feedOptions); return(repo.FindAsync(predicate, clauses, feedOptions)); }