public IEnumerable <GameWish> GetGameWishlist(string username) { var ids = _geekConnector.GetWishlistGameIds(username).ToList(); var games = _boardGameRepository.GetBoardGames(ids.Select(i => i.Id)).ToList(); var missingIds = ids.Where(id => !games.Select(g => g.Id).Contains(id.Id)).ToList(); games.AddRange(missingIds.Select(CreateDummyGame)); _boardGameRepository.StoreUnknownIds(missingIds.Select(id => id.Id)); return(ids.Select(id => new GameWish { BoardGame = games.First(g => g.Id == id.Id), Owner = username, Priority = id.Priority, Comment = id.Comment })); }