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"); } }
public CountryContext() { try { Database.EnsureCreated(); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex); } }
private void ReadFile(string address) { try { DataText = (new WebClient()).DownloadString(address); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "Reading the JSON"); } }
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 GetAllCountries() { try { using var db = new CountryContext(); ListOfCountries = db.Countries .Include(city => city.Capital) .Include(region => region.Region) .ToList(); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "While getting data from the db"); } }
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"); } }
public List <JsonCountry> FillCountries(string countryName) { var dataFile = new FileContext(); dataFile.GetJson(countryName); try { modelRoot = JsonConvert.DeserializeObject <List <Root> >(dataFile.DataText); modelJsonCountry = JsonConvert.DeserializeObject <List <JsonCountry> >(dataFile.DataText); //modelTranslations = JsonConvert.DeserializeObject<List<Translations>>(dataFile.DataText); //modelLanguage = JsonConvert.DeserializeObject<List<Language>>(dataFile.DataText); //modelCurrency = JsonConvert.DeserializeObject<List<Currency>>(dataFile.DataText); } catch (Exception ex) { ExceptionsHandler.CallExceptionMessage(ex, "Converting data from the JSON"); } return(modelJsonCountry); }