예제 #1
0
        private async Task DismissSomeProductsAsync(CancellationToken stoppingToken)
        {
            var products = await Warehouse.GetActiveProductsAsync();

            var tasks = products.Shuffle().Take(HowMany(products))
                        .TapList(l => logger.LogInformation($"Dismiss {l.Count()} products"))
                        .Select(product => Warehouse.DismissAsync(product));
            await Task.WhenAll(tasks);
        }
예제 #2
0
        private async Task <Product> ChoseProduct()
        {
            var products = await Warehouse.GetActiveProductsAsync();

            return(products.OrderBy(c => System.Guid.NewGuid()).FirstOrDefault());
        }