public static void SeedTimeZones(FCTContext _context, ILogger <DictionarySeeder> logger) { logger.LogInformation("DB Seeder: TimeZones", DateTime.Now); if (_context.TimeZone.Any()) { return; } var zones = _context.Zone.ToList(); var timeZonesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\timezones.json"); using (StreamReader r = new StreamReader(timeZonesFilePath)) { var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; string json = r.ReadToEnd(); var items = JsonConvert.DeserializeObject <List <TimeZoneModel> >(json, settings); var timeZones = new List <Domain.Geo.TimeZone>(); var zoneTimeZones = new List <ZoneTimeZone>(); foreach (var item in items) { var timeZone = new Domain.Geo.TimeZone() { Name = item.value, Abbreviation = item.abbr, IsDst = item.isdst, Description = item.text, Offset = item.offset }; foreach (var ztz in item.utc) { var zone = zones.Where(z => z.ZoneName == ztz).FirstOrDefault(); if (zone != null) { timeZone.Zones.Add(new ZoneTimeZone() { TimeZone = timeZone, Zone = zone }); } } timeZones.Add(timeZone); } _context.TimeZone.AddRange(timeZones); _context.SaveChanges(); } }
public static void SeedAirports(FCTContext _context, ILogger <DictionarySeeder> logger) { logger.LogInformation("DB Seeder: Airports", DateTime.Now); if (_context.Airport.Any()) { return; } var countriesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\airports.json"); using (StreamReader r = new StreamReader(countriesFilePath)) { var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; string json = r.ReadToEnd(); var items = JsonConvert.DeserializeObject <Dictionary <string, AirportModel> >(json, settings); var zones = _context.Zone.ToList(); var airportsList = new List <Airport>(); foreach (var item in items) { var countryCode = item.Value.country; var airport = new Airport() { Name = item.Value.name, CountryCode = item.Value.country, Country = _context.Country.Where(c => c.Alpha2Code == countryCode).FirstOrDefault(), State = item.Value.state, City = item.Value.city, IATA = item.Value.iata, ICAO = item.Value.icao, Latitude = item.Value.lat, Longitude = item.Value.lon, Elevation = item.Value.elevation, TimeZone = item.Value.tz, Zone = zones.Where(c => c.ZoneName == item.Value.tz).FirstOrDefault() }; airportsList.Add(airport); } _context.Airport.AddRange(airportsList); _context.SaveChanges(); } }
public static void SeedZones(FCTContext _context, ILogger <DictionarySeeder> logger) { logger.LogInformation("DB Seeder: Zones", DateTime.Now); if (_context.Zone.Any()) { return; } var zonesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\zone.csv"); var _createdCountries = _context.Country.ToList(); var zoneList = new List <Zone>(); using (var reader = new StreamReader(zonesFilePath)) using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture)) { csv.Configuration.HasHeaderRecord = false; var records = csv.GetRecords <ZoneModel>(); foreach (var record in records) { zoneList.Add(new Zone() { CountryCode = record.CountryCode, ZoneName = record.ZoneName, GenericZoneName = TZNames.GetNamesForTimeZone(record.ZoneName, "en-US").Generic, Country = _createdCountries.Where(c => c.Alpha2Code == record.CountryCode).FirstOrDefault() }); } _context.AddRange(zoneList); _context.SaveChanges(); } }
public DataSeeder(FCTContext context, ILogger <DataSeeder> logger) { _context = context; _logger = logger; }
public PurchaseDAL(FCTContext context) { _context = context; }
public ProductDAL(FCTContext context) { _context = context; }
public AviationRepository(FCTContext context) { _context = context ?? throw new ArgumentNullException(nameof(context)); }
public CustomerDAL(FCTContext context) { _context = context; }
public static void SeedCountries(FCTContext _context, ILogger <DictionarySeeder> logger) { logger.LogInformation("DB Seeder: Countries", DateTime.Now); if (_context.Country.Any()) { return; } var countriesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\countries.json"); using (StreamReader r = new StreamReader(countriesFilePath)) { var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; string json = r.ReadToEnd(); List <CountriesDataModel> items = JsonConvert.DeserializeObject <List <CountriesDataModel> >(json, settings); foreach (var item in items) { var continent = new Continent(); var existingContinent = _context.Continent.Where(c => c.Name == item.region).FirstOrDefault(); if (existingContinent == null) { continent = new Continent() { Name = item.region }; _context.Add(continent); _context.SaveChanges(); } else { continent = existingContinent; } var region = new Region(); var existingRegion = _context.Region.Where(rg => rg.Name == item.subregion).FirstOrDefault(); if (existingRegion == null) { region = new Region() { Name = item.subregion, Continent = continent }; _context.Add(region); _context.SaveChanges(); } else { region = existingRegion; } var newCountry = new Country() { Name = item.name.common, OfficialName = item.name.official, Alpha2Code = item.cca2, Alpha3Code = item.cca3, Area = item.area, Region = region, Latitude = item.latlng.FirstOrDefault(), Longitude = item.latlng.LastOrDefault() }; _context.Add(newCountry); _context.SaveChanges(); } } }
public DictionarySeeder(FCTContext context, ILogger <DictionarySeeder> logger) { _context = context; _logger = logger; }
public EnsureDB(FCTContext context, ILogger <EnsureDB> logger) { _context = context; _logger = logger; }
public StatsRepository(FCTContext context) { _context = context; }