public bool CreateNames(IList <FirstNames> names) { try { using var context = new RacingContext(); var uniquelist = new List <FirstNames>(); foreach (var name in names) { if (!context.FirstNamesList.Any(n => n.FirstName == name.FirstName && n.Nation == name.Nation)) { var nation = context.NationList.SingleOrDefault(n => n.NationId == name.Nation.NationId); name.Nation = nation; uniquelist.Add(name); } } context.FirstNamesList.AddRange(uniquelist); context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public bool Update(Race item) { try { using var context = new RacingContext(); context.Attach(item); context.Entry(item).State = EntityState.Modified; var copyRacePointList = new List <RacePoint>(item.RacePointList); var race = context.RaceList.Include(r => r.RacePointList).Where(r => r.RaceId == item.RaceId).FirstOrDefault(); foreach (var racePoint in copyRacePointList) { if (racePoint.RacePointId == 0) { var oldRacePoint = race.RacePointList.Where(p => p.Position == racePoint.Position && p.RacePointId > 0).FirstOrDefault(); if (oldRacePoint != null) { context.Entry(oldRacePoint).State = EntityState.Deleted; } context.Entry(racePoint).State = EntityState.Added; } else { context.Entry(racePoint).State = EntityState.Modified; } } foreach (var racePoint in race.RacePointList.Where(p => p.Position > copyRacePointList.Max(p => p.Position)).ToList()) { context.Entry(racePoint).State = EntityState.Deleted; } foreach (var racePart in race.RacePartList) { if (racePart.RacePartId == 0) { context.Entry(racePart).State = EntityState.Added; } else { context.Entry(racePart).State = EntityState.Modified; } } context.SaveChanges(); return(true); } catch (Exception e) { throw e; } }
public bool Update(Team item) { try { using var context = new RacingContext(); context.Attach(item); context.Entry(item).State = EntityState.Modified; context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public bool Delete(int id) { try { using var context = new RacingContext(); context.TeamList.Remove(context.TeamList.Find(id)); context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public bool Create(Race item) { try { using var context = new RacingContext(); if (!context.RaceList.Any(r => r.Name == item.Name)) { context.RaceList.Add(item); context.SaveChanges(); } return(true); } catch (Exception) { return(false); } }
public bool Create(Setting item) { try { using var context = new RacingContext(); if (!context.SettingList.Any(s => s.Description == item.Description)) { context.SettingList.Add(item); context.SaveChanges(); } return(true); } catch (Exception) { return(false); } }
public bool Delete(int id) { try { using var context = new RacingContext(); if (context.FirstNamesList.Any(n => n.Nation.NationId == id) || context.LastNamesList.Any(n => n.Nation.NationId == id)) { return(false); } context.NationList.Remove(context.NationList.Find(id)); context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public bool Delete(int id) { try { using var context = new RacingContext(); var race = context.RaceList.Include(r => r.RacePointList).Where(r => r.RaceId == id).FirstOrDefault(); foreach (var racePoint in race.RacePointList) { context.Entry(racePoint).State = EntityState.Deleted; } context.SaveChanges(); context.RaceList.Remove(context.RaceList.Find(id)); context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public IList <FirstNames> GenerateNames(int numberOfNames) { try { using var context = new RacingContext(); var firstNames = new List <FirstNames>(); var rand = new Random(); for (int i = 0; i < numberOfNames; i++) { var toSkip = rand.Next(context.FirstNamesList.Count()); firstNames.Add(context.FirstNamesList.Include(c => c.Nation).Skip(toSkip).Take(1).FirstOrDefault()); } return(firstNames); } catch (Exception) { throw; } }
public IList <Race> Get() { using var context = new RacingContext(); return(context.RaceList.Include(x => x.RacePointList).Include(x => x.RacePartList).ToList()); }
public IList <Team> Get() { using var context = new RacingContext(); return(context.TeamList.ToList()); }
public IList <Nation> Get() { using var context = new RacingContext(); return(context.NationList.ToList()); }
public IList <Setting> Get() { using var context = new RacingContext(); return(context.SettingList.ToList()); }