private static async Task GetPlanetInformation() { var solarSystemIds = await _db.Systems.Select(s => s.EveOnlineId).ToListAsync(); var dbPlanets = await _db.Planets.ToListAsync(); foreach (var solarSystemId in solarSystemIds) { try { var solarSystem = await $"https://esi.evetech.net/latest/universe/systems/{solarSystemId}/?datasource=tranquility&language=en-us" .GetJsonAsync <ViewModels.System>(); Console.WriteLine($"Getting information from {solarSystem.Name}"); foreach (var planetBase in solarSystem.Planets) { try { var planet = await $"https://esi.evetech.net/latest/universe/planets/{planetBase.PlanetId}/?datasource=tranquility" .GetJsonAsync <ViewModels.Planet>(); Console.WriteLine($"Updating {planet.Name}"); var dbPlanet = dbPlanets.FirstOrDefault(x => x.Name.Contains(planet.Name)); if (dbPlanet == null) { continue; } dbPlanet.EveOnlineTypeId = planet.TypeId; dbPlanet.EveOnlineId = planet.PlanetId; _db.Entry(dbPlanet).State = EntityState.Modified; } catch (Exception ex) { Console.WriteLine(ex); } } } catch (Exception ex) { Console.WriteLine(ex); } } await _db.SaveChangesAsync(); }
public async Task <IActionResult> UpdateResourcePrices([FromBody] List <Resource> resources) { foreach (var resource in resources) { _db.Entry(resource).State = EntityState.Modified; } await _db.SaveChangesAsync(); return(Ok(resources)); }