2015-01-13 152 views
0

比較我必須做一些過濾的泛型集合。我正在嘗試使用LINQ。這是我的代碼:過濾泛型集合,而與另一個集合

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

我不知道如何比較int集合與單個int。請告訴我一個很好的方法來做到這一點。

+4

那麼你試圖執行什麼樣的比較?你們是不是要找到所有的學生與集合中的ID?如果是這樣,你可以使用「Contains」,例如'那裏ids.Contains(student.ID)'...或者你可以使用一個加入反對集合。 –

+1

你一個也用加入了這一點,如果你有兩個收集 –

+0

我如何使用包含。我無法。我更新了代碼。請再看看我正在嘗試做什麼 – user134235

回答

1

對於快速查找首先把學生證的在HashSet。用於檢查ID的存在,對利用Contains

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