Ejemplo n.º 1
0
        protected override async Task ExecuteJobAsync()
        {
            // ToDo: Bulk
            foreach (var forecasts in Grabber.Grabber.GetForecasts())
            {
                foreach (var forecast in forecasts)
                {
                    var exist = await WeatherForecastRepository.ExistsAsync(w => w.City.Name == forecast.CityName && w.Date.Date == forecast.Date.Date);

                    if (exist)
                    {
                        await WeatherForecastRepository.SaveAsync(forecast);
                    }
                    else
                    {
                        var city = (await CityRepository.FindAsync(c => c.Name == forecast.CityName)).FirstOrDefault();
                        SetWeatherCity(forecast, city);

                        await WeatherForecastRepository.CreateAsync(forecast);
                    }
                }
            }

            // ToDO: informative log
            Logger.LogInformation("GRABBED!");
        }