Visual C#, Найти записи в DataTable A, который находится или нет в DataTable B

Допустим, и DataTable A, и B имеют идентификатор столбца.

Есть ли какой-нибудь краткий способ использования Linq (не для цикла), чтобы найти записи в A, которые (или нет) в B основаны на ID!?

Например:

A
---
ID     Value
2        7
2        3
3        5
5        6
7        2
7        5
7        4

B
---
ID     Value
1        3
1        9
2        4
4        6
4        2
7        4
9        3

Results from A which is ALSO in B base on ID
---
ID     Value
2        7
2        3
7        2
7        5
7        4

Results from A which is NOT in B base on ID
---
ID     Value
3        5
5        6

1 ответ

Решение

Использование любого метода может работать для вас.

Нечто подобное, очевидно переменное в зависимости от вашей структуры данных:

AInB = A.Where(a => B.Any(b => b.ID == a.ID));

ANotInB = A.Where(a => !B.Any(b => b.ID == a.ID));
Другие вопросы по тегам