// public static async void GetDataMode (string path) // { // string url = $"https://swapi.dev/api/{path}/"; // } private static void SeedFilms(dynamic json, StarwarsContext _context) { dynamic _films = json["results"]; // parse though the films and add to the context. foreach (var _film in _films) { _context.Add(new Films { Url = _film["url"], Title = _film["title"], EpisodeId = _film["episode_id"], OpeningCrawl = _film["opening_crawl"], Director = _film["director"], Producer = _film["producer"], ReleaseDate = _film["release_date"], Created = _film["created"] }); // get the array objects var characters = _film["characters"]; foreach (var ch in characters) { _context.Add(new FilmToPeople { FilmUrl = _film["url"], PeopleUrl = ch }); } var planets = _film["planets"]; foreach (var pl in planets) { _context.Add(new PlanetsToFilms { FilmsUrl = _film["url"], PlanetUrl = pl }); } var starships = _film["starships"]; foreach (var st in starships) { _context.Add(new FilmToCraft { FilmUrl = _film["url"], CraftUrl = st }); } var vehicles = _film["vehicles"]; foreach (var ch in vehicles) { _context.Add(new FilmToCraft { FilmUrl = _film["url"], CraftUrl = ch }); } var species = _film["species"]; foreach (var sp in species) { _context.Add(new FilmsToSpecies { FilmUrl = _film["url"], SpeciesUrl = sp }); } _context.SaveChangesAsync(); } }
public async Task <bool> Add(Film film) { _context.Films.Add(film); try { await _context.SaveChangesAsync(); return(true); } catch (DbUpdateException err) { logger.LogError(err.Message); return(false); } }
public async Task <bool> Add(Planet planet) { try { await _context.Planets.AddAsync(planet).ConfigureAwait(false); await _context.SaveChangesAsync().ConfigureAwait(false); return(true); } catch (DbUpdateException ex) { _logger.LogError(ex.Message); return(false); } }
public async Task <bool> Add(Specie specie) { try { await _context.Species.AddAsync(specie); await _context.SaveChangesAsync(); return(true); } catch (Exception e) { _logger.LogInformation(e.Message); return(false); } }
public async Task <AddEntityResponse <People> > Add(PeopleViewModel people) { var(Name, Height, Mass, HairColor, SkinColor, EyeColor, BirthYear, Gender, HomeWorld, Films, Vehicles, Specie) = people; var newPeople = new People { Name = Name, Height = Height, Mass = Mass, HairColor = HairColor, SkinColor = SkinColor, EyeColor = EyeColor, BirthYear = BirthYear, Gender = Gender }; if (Films != null) { var peopleFilms = Films.Select(film => new PeopleFilms { FilmId = film.Id, PeopleId = newPeople.Id }).ToList(); newPeople.Films = peopleFilms; } if (HomeWorld != null) { var peopleHomeworld = new Planet { Id = HomeWorld.Id }; _context.Planets.Attach(peopleHomeworld); newPeople.HomeWorld = peopleHomeworld; } if (Vehicles != null) { var peopleVehicles = Vehicles.Select(v => new VehiclePilot { PeopleId = newPeople.Id, VehicleId = v.Id }).ToList(); newPeople.Vehicles = peopleVehicles; } if (Specie != null) { var peopleSpecie = new Specie { Id = people.Specie.Id }; _context.Species.Attach(peopleSpecie); newPeople.Specie = peopleSpecie; } try { await _context.People.AddAsync(newPeople).ConfigureAwait(false); await _context.SaveChangesAsync().ConfigureAwait(false); return(new AddEntityResponse <People> { EntitySuccessfullyAdded = true, Entity = newPeople }); } catch (DbUpdateException ex) { _logger.LogInformation($"PeopleRpository::Add -> { ex.Message }"); return(new AddEntityResponse <People> { EntitySuccessfullyAdded = false, Entity = newPeople }); } }
public async Task <AddEntityResponse <Vehicle> > Add(VehicleViewModel vehicle) { var( Id, Name, Model, Manufacturer, CostInCredits, Length, MaxAtmosphericSpeed, Crew, Passengers, CargoCapacity, Consumables, VehicleClass, Pilots, Films) = vehicle; var newVehicle = new Vehicle { Name = Name, Model = Model, Manufacturer = Manufacturer, CostInCredits = CostInCredits, Length = Length, MaxAtmosphericSpeed = MaxAtmosphericSpeed, Crew = Crew, Passengers = Passengers, CargoCapacity = CargoCapacity, Consumables = Consumables, VehicleClass = VehicleClass }; if (Films != null) { var vehicleFilms = Films.Select(f => new VehicleFilm { FilmId = f.Id, VehicleId = newVehicle.Id }).ToList(); newVehicle.Films = vehicleFilms; } if (Pilots != null) { var vehiclePilots = Pilots.Select(p => new VehiclePilot { VehicleId = newVehicle.Id, PeopleId = (Guid)p.Id }).ToList(); } var result = new AddEntityResponse <Vehicle> { Entity = newVehicle }; try { await _context.Vehicles.AddAsync(newVehicle); await _context.SaveChangesAsync(); result.EntitySuccessfullyAdded = true; return(result); } catch (Exception err) { _logger.LogError(err.Message); result.EntitySuccessfullyAdded = false; return(result); } }