public async Task <IEnumerable <Car> > AllCarsAsync() { List <Car> carsResult = new List <Car>(); foreach (var uri in PayloadSources) { IEnumerable <Car> cars = await CarService.GetCarsAsync(uri); carsResult.AddRange(cars); } return(carsResult); }
public async Task <IEnumerable <Car> > AllCarsInParallelNonBlockingAsync() { IEnumerable <Task <IEnumerable <Car> > > allTasks = PayloadSources.Select(uri => CarService.GetCarsAsync(uri)); IEnumerable <Car>[] allResults = await Task.WhenAll(allTasks); return(allResults.SelectMany(cars => cars)); }