public void AddFile(string Filepath) { using (SpelerContext context = new SpelerContext()) { List <Speler> nieuweSpelers = new List <Speler>(); using (StreamReader reader = File.OpenText(Filepath)) { reader.ReadLine(); string line; Dictionary <int, Team> localTeams = new Dictionary <int, Team>(); while ((line = reader.ReadLine()) != null) { //dictionary zodat we altijd maar met een object van een team werken, anders geeft EF errosrs string[] splitLine = line.Split(','); string naam = splitLine[0]; int rugNummer = int.Parse(splitLine[1]); string clubNaam = splitLine[2]; int waarde = int.Parse(splitLine[3].Replace(" ", "")); int stamNr = int.Parse(splitLine[4]); string trainer = splitLine[5]; string bijnaam = splitLine[6]; Team team; if (!localTeams.ContainsKey(stamNr)) { if (!context.Teams.Any(t => t.StamNummer == stamNr)) { team = new Team(stamNr, clubNaam, bijnaam, trainer); context.Teams.Add(team); localTeams.Add(stamNr, team); } else { team = context.Teams.Single(t => t.StamNummer == stamNr); localTeams.Add(stamNr, team); } } else { team = localTeams[stamNr]; } Speler temp = new Speler(naam, rugNummer, waarde); temp.SetTeam(team); //testing vanaf hier want dit is insane aan het worden //tot hier if (!context.Spelers.Any(s => s.Naam.Equals(temp.Naam) && s.RugNummer == temp.RugNummer && s.TransferWaarde == temp.TransferWaarde)) { nieuweSpelers.Add(temp); } } } context.Spelers.AddRange(nieuweSpelers); context.SaveChanges(); } }
public void VoegTeamToe(Team team) { using (SpelerContext context = new SpelerContext()) { if (context.Teams.Any(t => t.StamNummer == team.StamNummer)) { System.Console.WriteLine($"team met stamnummer {team.StamNummer} behoort al tot de teams"); } else { context.Teams.Add(team); context.SaveChanges(); } } }
public void UpdateTeam(Team team) { using (SpelerContext context = new SpelerContext()) { if (context.Teams.Any(t => t.StamNummer == team.StamNummer)) { Team dataTeam = context.Teams.Single(t => t.StamNummer == team.StamNummer); dataTeam.Bijnaam = team.Bijnaam; dataTeam.Naam = team.Naam; dataTeam.Trainer = team.Trainer; context.SaveChanges(); } else { throw new ArgumentException($"Team with StamNummer {team.StamNummer} was not found in the database"); } } }
public void VoegSpelerToe(Speler speler) { using (SpelerContext context = new SpelerContext()) { if (context.Teams.Any(t => t.StamNummer == speler.TeamStamNummer)) { speler.Team = context.Teams.Single(t => t.StamNummer == speler.TeamStamNummer); } if (!(context.Spelers.Any(s => (s.SpelerID == speler.SpelerID) || (s.Naam == speler.Naam && s.RugNummer == speler.RugNummer && s.TeamStamNummer == speler.TeamStamNummer)))) { context.Spelers.Add(speler); context.SaveChanges(); } else { System.Console.WriteLine($"De speler met de naam {speler.Naam} en ID {speler.SpelerID} bevindt zich al in de databank"); } } }
public void UpdateSpeler(Speler speler) { using (SpelerContext context = new SpelerContext()) { Speler dataSpeler; if (speler.SpelerID != 0) { dataSpeler = context.Spelers.Single(s => s.SpelerID == speler.SpelerID); dataSpeler.Naam = speler.Naam; dataSpeler.RugNummer = speler.RugNummer; dataSpeler.TransferWaarde = speler.TransferWaarde; context.SaveChanges(); } else { System.Console.WriteLine($"Missing PlayerID for {speler.Naam}, unable to update"); } } }
public void VoegTransferToe(Transfer transfer) { using (SpelerContext context = new SpelerContext()) { if (context.Teams.Any(t => t.StamNummer == transfer.OudTeam.StamNummer)) { transfer.OudTeam = context.Teams.Single(t => t.StamNummer == transfer.OudTeam.StamNummer); } if (context.Teams.Any(t => t.StamNummer == transfer.NieuwTeam.StamNummer)) { transfer.NieuwTeam = context.Teams.Single(t => t.StamNummer == transfer.NieuwTeam.StamNummer); } if (!context.Spelers.Any(s => s.SpelerID == transfer.Speler.SpelerID)) { transfer.Speler = context.Spelers.Single(s => s.SpelerID == transfer.Speler.SpelerID); } context.Transfers.Add(transfer); context.SaveChanges(); } }
public void TransferSpeler(Speler speler, Team nieuwteam) { using (SpelerContext context = new SpelerContext()) { Team oudTeam; if ((oudTeam = context.Teams.Single(t => t.StamNummer == speler.TeamStamNummer)) != null) { speler.Team = oudTeam; } if (context.Teams.Any(t => t.StamNummer == nieuwteam.StamNummer)) { nieuwteam = context.Teams.Single(t => t.StamNummer == nieuwteam.StamNummer); } if (context.Spelers.Any(s => s.SpelerID == speler.SpelerID)) { speler = context.Spelers.Single(s => s.SpelerID == speler.SpelerID); } Transfer transfer = new Transfer(speler, nieuwteam, oudTeam); transfer.TransferPrijs = speler.TransferWaarde; context.Transfers.Add(transfer); context.SaveChanges(); } }