コード例 #1
0
        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();
            }
        }
コード例 #2
0
        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!"));
        }
コード例 #3
0
        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"));
        }