public async Task Execute(IJobExecutionContext context) { var stocks = await _repository.GetStocks(); if (stocks.Count == 0) { return; } foreach (var stock in stocks) { var apiInfo = await _apiService.GetDailyStock(stock.Symbol); if (apiInfo == null) { continue; } await _mediator.Send(new UpdateStockStatusCommand(apiInfo.Symbol, apiInfo.MarketState)); if (apiInfo.MarketState == "POST") //closed { continue; } if (apiInfo.MarketState == "CLOSED") { continue; } await _repository.AddDailyPrice(new PriceDaily { Ask = apiInfo.Ask, Bid = apiInfo.Bid, AskSize = apiInfo.AskSize, BidSize = apiInfo.BidSize, StockSymbol = stock.Symbol, Time = apiInfo.Time, Price = apiInfo.Price, Volume = apiInfo.Volume }); } }