private async Task LoadNewestParticipants() { foreach (var tourn in Database.Tournaments) { var challongeTournament = await ChallongeTournaments.getTournament(tourn.ShortName); var participants = await challongeTournament.GetParticipants(); foreach (var chalPart in participants) { var participant = await Database.Participants.FindAsync(chalPart.id.ID); bool exist = participant != null; if (chalPart.active && !exist) { Database.Participants.Add(Participant.CreateParticipant(chalPart)); OnNewParticipantRegistered?.Invoke(this, new OnNewParticipantRegisteredEventArgs(chalPart, challongeTournament)); Console.WriteLine($"New participant added: {chalPart.name}"); } else if (!chalPart.active && exist) { //Database.Participants.Remove(participant); } } } await Database.SaveChangesAsync(); }