/// <summary> /// Сохранение информации в БД /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Button2_SaveToDB(object sender, EventArgs e) { if (!DBConnecter.IsSetConfig()) { MessageBox.Show("БД не подключена. Выберите конфигуарционный файл."); } else { Country country = Countries.Last(); //Проверка столицы int cityId; try { cityId = DBConnecter.GetCityByTitle(country.Capital).Id; } catch (NullReferenceException) { Cities capital = new Cities { Title = country.Capital }; DBConnecter.AddCity(capital); cityId = capital.Id; } //Проверка региона int RegionId; try { RegionId = DBConnecter.GetRegionByTitle(country.Region).Id; } catch (NullReferenceException) { Regions region = new Regions { Title = country.Region }; DBConnecter.AddRegion(region); RegionId = region.Id; } //проверка кода страны try { Countries c = DBConnecter.GetCountryByCode(country.NumericCode); //изменение инфы старой страны c.Area = Countries.Last().Area; c.Capital = cityId; c.Population = Countries.Last().Population; c.Region = RegionId; c.Title = Countries.Last().Name; DBConnecter.UpdateDB(); } catch (System.NullReferenceException) { //если страна не найдена, добавление ее в бд Countries country1 = new Countries { Title = country.Name, Code = country.NumericCode, Capital = cityId, Area = country.Area, Population = country.Population, Region = RegionId }; DBConnecter.AddCountry(country1); } ShowCountriesInDB(); } }
/// <summary> /// Добавление регоиона /// </summary> /// <param name="region"></param> /// Принимает объект-регион public void AddRegion(Regions region) { db.GetTable <Regions>().InsertOnSubmit(region); UpdateDB(); }