如何检查列表中一个元素的值是否包含在另一个列表中

本文关键字:列表 是否 另一个 元素 包含 何检查 检查 一个 | 更新日期: 2023-09-27 18:10:28

我有一个LINQ问题。类是EF模型的实体。我正在使用c#。

List<Employee> collection_1 = ...//dummy data
List<Employee> collection_2 = ...//dummy data

我想使用LINQ检查collection_1中的一个雇员是否包含在collection_2中。我怎样才能查询呢?因为我有EF的问题。只针对单个值。我可以使用contains方法进行检查。例如

db.Employees.Where(x=>x.containes(employee));

但是我想用一个句子来检查list

如何检查列表中一个元素的值是否包含在另一个列表中

我希望我明白你的意思:您可以通过以下三种方式进行检查:

Boolean b1 = collection_1.Any(x => collection_2.Contains(x));

Boolean b2 = collection_1.Intersect(collection_2).Count() > 0;

或当员工引用不相同时:

Boolean b3 = collection_1.Any(x =>collection_2.Select(y=>y.Id).Contains(x.Id));