2015-08-30 2 views
-1

У меня проблема с LINQ. Классы являются объектами модели EF. Я использую C#.Как проверить одно из значений элемента списка, содержится в другом списке в C# LINQ

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

Я хочу проверить, что один из сотрудников в коллекции_1 содержится в collection_2, используя LINQ. Как я могу проверить это? Потому что у меня проблема с EF. Просто для одного значения. Я могу проверить использование метода contains. Например

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

Но я хочу проверить список только одним предложением.

ответ

1

Я надеюсь, что у меня есть свой пункт: Вы проверить это либо в этих трех направлениях:

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)); 

Я надеюсь, что это поможет.

Смежные вопросы