public async Task <ActionResult <IEnumerable <ItemStats> > > GetMarketPricesAndStats() { IEnumerable <ItemFromDb> itemsFromDatabase = JsonSerializer.Deserialize <IEnumerable <ItemFromDb> >( TempData["itemsFromDatabase"].ToString() ); IEnumerable <MarketPrices> marketPrices = await _ebayAPIProvider.RetrieveMarketPrices( itemsFromDatabase.Select(item => item.Name) ); IEnumerable <StatsInput> statsInputs = itemsFromDatabase.Select(itemFromDb => new StatsInput() { ItemName = itemFromDb.Name, PurchasePrice = itemFromDb.Price, MarketPrices = marketPrices.FirstOrDefault(itemFromAPI => itemFromAPI.Name == itemFromDb.Name).Prices }); IEnumerable <ItemStats> itemStats = _statsService.CalculateMarketPriceAndGainLoss(statsInputs); return(Ok(itemStats)); }