Я застрял с запросом LINQ (или любым другим эффективным средством достижения одного и того же). Может ли кто-нибудь показать мне, как я могу выбрать все элементы в одном списке, которых нет в другом списке?
В принципе, у меня есть список, который я создал, сопоставляя элементы между двумя другими списками. Мне нужно найти все элементы в первом списке, которые не были найдены. Может кто-нибудь заполнить звезды во втором запросе LINQ ниже с запросом, который достигнет этой цели? Если бы я использовал TSQL, я бы сделал SELECT * NOT IN ()
, но я не думаю, что LINQ позволяет это.
//Create some sample lists.
List<IdentifierLookupData> list1 = new List<IdentifierLookupData> { /*Init */ };
List<IdentifierLookupData> list2 = new List<IdentifierLookupData> { /*Init */ };
//Find all items in list1 and list2 that match and store them in joinItems.
var joinItems = (from d1 in list1
join d2 in list2 on d1 equals d2
select d1).ToList<IdentiferLookupData>();
//Find all items in list1 not in joinItems.
var deletedItems = (from d1 in list1
***select all items not found in joinItems list.***