public void Seedit(string jsonData) { JsonSerializerSettings settings = new JsonSerializerSettings { ContractResolver = new PrivateSetterContractResolver() }; _context.Database.EnsureDeleted(); _context.Database.EnsureCreated(); //json was hard coded with dates //editing the raw json to update dates to current date range //not doing that in weatherevent because date is protected List <JObject> random = JsonConvert.DeserializeObject <List <JObject> >(jsonData, settings); var day = System.DateTime.Today.AddDays(-1); foreach (var weatherEvent in random) { day = day.AddDays(1); weatherEvent["date"] = day; } jsonData = JsonConvert.SerializeObject(random); //dates now updated List <WeatherEvent> events = JsonConvert.DeserializeObject <List <WeatherEvent> >(jsonData, settings); if (!_context.WeatherEvents.Any()) { _context.AddRange(events); _context.SaveChanges(); } }
public async Task <IActionResult> Post() { var root = await _stationsDownloader.Download(); var weatherStations = new List <WeatherStation>(); foreach (var station in root.station) { var weatherStation = new WeatherStation { Id = station.id.ToString(), Name = station.name, Altitude = station.height, Latitude = station.latitude, Longitude = station.longitude }; weatherStations.Add(weatherStation); } _db.AddRange(weatherStations); _db.SaveChanges(); return(Ok("Import completed!")); }
public async Task <IActionResult> Post() { var root = await _stationImporter.ImportStations(); var weatherStations = root.station.Select(station => new WeatherStation { Id = station.id.ToString(), Name = station.name, Altitude = station.height, Latitude = station.latitude, Longitude = station.longitude }) .ToList(); //_db.RemoveRange(weatherStations); //_db.SaveChanges(); _db.AddRange(weatherStations); _db.SaveChanges(); return(Created("Import completed!", "tjenaaaa")); }