private void CleanUpNemeses(NemeStatsDbContext nemeStatsDbContext)
{
List<int> playerIdsToClearNemesisId = (from player in nemeStatsDbContext.Players
where player.Name == testPlayer1Name
|| player.Name == testPlayer1Name
|| player.Name == testPlayer2Name
|| player.Name == testPlayer3Name
|| player.Name == testPlayer3Name
|| player.Name == testPlayer4Name
|| player.Name == testPlayer5Name
|| player.Name == testPlayer6Name
|| player.Name == testPlayer7Name
|| player.Name == testPlayer8Name
|| player.Name == testPlayer9UndefeatedWith5GamesName
select player.Id)
.ToList();
nemesisIdsToDelete = (from nemesis in nemeStatsDbContext.Nemeses
where playerIdsToClearNemesisId.Contains(nemesis.NemesisPlayerId)
select nemesis.Id)
.Distinct()
.ToList();
Player playerNeedingNemesisCleared;
foreach (int playerId in playerIdsToClearNemesisId)
{
playerNeedingNemesisCleared = nemeStatsDbContext.Players.Find(playerId);
if (playerNeedingNemesisCleared.NemesisId != null)
{
playerNeedingNemesisCleared.NemesisId = null;
}
}
nemeStatsDbContext.SaveChanges();
Nemesis nemesisToDelete;
foreach (int nemesisId in nemesisIdsToDelete)
{
nemesisToDelete = nemeStatsDbContext.Nemeses.Find(nemesisId);
nemeStatsDbContext.Nemeses.Remove(nemesisToDelete);
}
nemeStatsDbContext.SaveChanges();
}