// Метод для очистки таблиц БД 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 // за дату 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; }
// Метод для сохранения погодных данных в 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); } }