コード例 #1
0
        public IActionResult AddStationData()
        {
            var meteoData = new MeteoDataDBContext();

            var stationNames = meteoData
                               .Stations
                               .Select(x => new SelectListItem
            {
                Text  = x.Name,
                Value = x.Name
            });

            var viewModel = new NewStationDataViewModel
            {
                Date         = DateTime.Now,
                StationNames = stationNames
            };

            return(View(viewModel));
        }
コード例 #2
0
        public IActionResult AddStationData(NewStationDataViewModel stationData)
        {
            var meteoData = new MeteoDataDBContext();

            var station = meteoData
                          .Stations
                          .FirstOrDefault(x => x.Name.ToLower() == stationData.StationName.ToLower());

            if (station == null)
            {
                ModelState.AddModelError(string.Empty, STATION_DOES_NOT_EXIST);
                stationData.StationNames = meteoData
                                           .Stations
                                           .Select(x => new SelectListItem
                {
                    Text  = x.Name,
                    Value = x.Name
                });

                return(View(stationData));
            }

            // TODO: validate those values
            var stationDataToAdd = new DayWeatherData
            {
                Station       = station,
                Date          = stationData.Date,
                Precipitation = stationData.Precipitation,
                Temperature   = stationData.Temperature,
                ThunderCount  = stationData.ThunderCount,
                Wind          = stationData.Wind
            };

            meteoData.DaysData.Add(stationDataToAdd);
            meteoData.SaveChanges();

            return(RedirectToAction("Index", "Home"));
        }