예제 #1
0
        // Метод для очистки таблиц БД
        public void ClearData(string connectionstring)
        {
            try
            {
                //Подключаемся к БД
                WeatherDBEntity weatherDB = new WeatherDBEntity(connectionstring);

                // Очистка таблиц БД            
                foreach (var item in weatherDB.City1Entity)
                    weatherDB.City1Entity.Remove(item);
                foreach (var item in weatherDB.City2Entity)
                    weatherDB.City2Entity.Remove(item);
                foreach (var item in weatherDB.City3Entity)
                    weatherDB.City3Entity.Remove(item);

                // Сохраняем состояние БД
                weatherDB.SaveChanges();
                weatherDB.Dispose();
            }
            catch (Exception exception)
            {
                // Делаем запись в лог файл                
                Logger.WriteLog(System.DateTime.Now.ToString()
                    + " "
                    + exception.TargetSite.ToString()
                    + " "
                    + exception.Message);                
            } 
        }
예제 #2
0
        // Получение погодных данных для города с порядковым номером 2
        // за дату date
        public List<City2Entity> GetCity2Weather(WeatherService wservice,
                                                        string date)
        {
            List<City2Entity> queryResult = new List<City2Entity>();

            try
            {
                // Подключаемся к СУБД
                WeatherDBEntity weatherDB = new WeatherDBEntity(wservice.ConnectionString);

                // Запрос погодных данных за дату date
                queryResult =
                    (from item in weatherDB.City2Entity.ToList<City2Entity>().AsParallel()
                     where item.Date.Contains(date)
                     orderby item.Date descending
                     select item).ToList<City2Entity>();

                weatherDB.Dispose();
            }
            catch (Exception exception)
            {
                // Делаем запись в лог файл                
                Logger.WriteLog(System.DateTime.Now.ToString()
                    + " "
                    + exception.TargetSite.ToString()
                    + " "
                    + exception.Message);
            }

            return queryResult;
        }
예제 #3
0
        // Метод для сохранения погодных данных в 1-ую таблицу БД
        public void City1Save(string connectionstring, Dictionary<string, string> weatherData)
        {
            try
            {
                // Соединение с БД
                WeatherDBEntity weatherDB = new WeatherDBEntity(connectionstring);

                // 1-ый город
                City1Entity City1Item = new City1Entity();
                City1Item.Date = weatherData["Date"];
                City1Item.Temperature = weatherData["Temperature"];
                City1Item.Pressure = weatherData["Pressure"];
                City1Item.Wetness = weatherData["Wetness"];
                City1Item.Wind = weatherData["Wind"];
                City1Item.Clouds = weatherData["Clouds"];                

                // Добавляем запись в БД                
                if ((from item in weatherDB.City1Entity.ToList<City1Entity>()
                     where item.Date == City1Item.Date
                     select item).Count<City1Entity>() == 0)
                {
                    weatherDB.City1Entity.Add(City1Item);
                    weatherDB.SaveChanges();
                }                                    
                weatherDB.Dispose();
            }
            catch (Exception exception)
            {
                // Делаем запись в лог файл                
                Logger.WriteLog(System.DateTime.Now.ToString()
                    + " "
                    + exception.TargetSite.ToString()
                    + " "
                    + exception.Message);                
            } 
        }