过滤通用集合,同时与其他集合进行比较

时间:2015-01-13 06:49:30

标签: c# linq linq-to-entities filtering

我必须在通用集合中进行一些过滤。我正在尝试使用LINQ。这是我的代码:

from student in students
where student.ID == (Here is another collection) from newstudent in Newstudents
select newstudent.ID
select student 

我不知道如何将int集合与单个int进行比较。请告诉我一个很好的方法。

1 个答案:

答案 0 :(得分:1)

对于快速查找,首先将学生ID放在HashSet中。使用Contains来检查id的存在。

var studentIds = new HashSet<int>(newStudents.Select(x => x.ID));
var filtered = students.Where(x => studentIds.Contains(x.ID));