Linq选择所有项目匹配数组

我有一个IEnumerable类型的数据集合,其中包含各种员工的人工记录。 我希望过滤列表并仅返回所选员工的记录,这些记录由包含EmployeeIDint[] employees列表指定。

 class LabourHours { public int ID {get;set;} public int EmployeeID {get;set;} public int HoursWorked {get;set;} } 

我怎么会这样呢? 我确信之前已经问过,但我在这里找不到类似的东西。 我发现最接近的是用UserID对记录进行分组,这不是我需要的 – 我需要实际的记录。

您可以使用LINQ过滤列表使用Contains方法:

 var result = list.Where(x => employees.Contains(x.EmployeeID));