public async Task GetDividendCalendarWithPrices2(DividendCalendarRequest request) { await _stocksRepository.DeleteAllDividendCalendarEntities2(); await _stocksRepository.DeleteStockPriceEntities(); var result = await _dividendCalendarService.GetDividendCalendar2(request); var stocksToInsert = _mapper.Map <List <DividendCalendarEntity2> >(result); await _stocksRepository.SaveDividendCalendarEntities2(stocksToInsert); var stockSplits = ListExtensions.Split(result, 10); foreach (var stockSplit in stockSplits) { var stockSymbols = StringExtensions.GetSymbolsString(stockSplit.Select(x => x.Symbol).ToArray()); var prices = await _stockPriceService.GetStockPrices(stockSymbols); var dbPriceEntities = _mapper.Map <List <StockPriceEntity> >(prices); await _stocksRepository.SaveStockPriceEntities(dbPriceEntities); } }