private void AddCountryHandler(CountryData countryData) { using var db = new CountryContext(); try { db.Countries.Add(new Country { Name = countryData.countryName, Code = countryData.countryCode, Area = countryData.countryArea, Population = countryData.countryPopulation, Capital = CityID == null ? (new City() { Name = countryData.countryCapital }) : db.Cities.Where(city => city.Name.Equals(countryData.countryCapital)).FirstOrDefault(), Region = RegionID == null ? (new Region() { Name = countryData.countryRegion }) : db.Regions.Where(region => region.Name.Equals(countryData.countryRegion)).FirstOrDefault() }); db.SaveChanges(); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "While adding a new country"); } }
public void NewCountry(string countryName) { var countryData = new CountryData(); countryData.GetData(countryName); RegionsHandler(countryData); CitiesHandler(countryData); using var db = new CountryContext(); try { if (!db.Countries .Any(country => country.Code.Equals(countryData.countryCode))) { AddCountryHandler(countryData); } else { UpdateCountryHandler(countryData); } db.SaveChanges(); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "Saving data"); } }
private void UpdateCountryHandler(CountryData countryData) { try { using var db = new CountryContext(); var Country = db.Countries.Where(country => country.Code.Equals(countryData.countryCode)).FirstOrDefault(); db.Countries.Update(Country); db.SaveChanges(); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "While update data"); } }
private void RegionsHandler(CountryData countryData) { using var db = new CountryContext(); try { if (db.Regions .Any(region => region.Name.Equals(countryData.countryRegion))) { RegionID = db.Regions .Where(region => region.Name.Equals(countryData.countryRegion)) .Select(region => region.Id) .FirstOrDefault(); } } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "Handle Regions"); } }
private void CitiesHandler(CountryData countryData) { try { using var db = new CountryContext(); if (db.Cities .Any(city => city.Name.Equals(countryData.countryCapital))) { CityID = db.Cities .Where(city => city.Name.Equals(countryData.countryCapital)) .Select(city => city.Id) .FirstOrDefault(); } } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "Handle Cities"); } }