Например, у меня есть списокКак отфильтровать список по элементу списка
Rating rate1 = new Rating { artistID = 1, userID = 101, rating = 2 };
Rating rate2 = new Rating { artistID = 1, userID = 102, rating = 4 };
Rating rate3 = new Rating { artistID = 2, userID = 101, rating = 3 };
Rating rate4 = new Rating { artistID = 2, userID = 102, rating = 5 };
Rating rate5 = new Rating { artistID = 2, userID = 103, rating = 1 };
Rating rate6 = new Rating { artistID = 3, userID = 102, rating = 1 };
Rating rate7 = new Rating { artistID = 3, userID = 103, rating = 1 };
List<Rating> ratings = new List<Rating>(7);
ratings.Add(rate1);
ratings.Add(rate2);
ratings.Add(rate3);
ratings.Add(rate4);
ratings.Add(rate5);
ratings.Add(rate6);
ratings.Add(rate7);
и у меня есть второй список,
List<Rating> ratings2 = new List<Rating>(2);
ratings2.Add(rate1);
ratings2.Add(rate3);
Теперь я хочу, чтобы фильтровать List<Rating> ratings
с List<Rating> ratings2
.
В этом CACE мы используем artistID
элемент для фильтрации списка оценок, в другом слове я хочу, чтобы включить весь список, которые содержат artistID
1 и 2, которые перечислены в ratings2
Спасибо.
'Join' должен быть' GroupJoin', чтобы избежать потенциально повторяющихся элементов. – Servy
Вам не нужна «группа», просто «в». Это будет выполнять «GroupJoin», а не «Join», за которым следует «GroupBy». – Servy
Спасибо, что указали на возможную дублируемую проблему с join, я полностью удалил подход join, я предпочитаю HashSet. –