-4

我有 2 个数据表。

表1:

id    Name
---    ----
1     AAA
2     BBB

表2:

id
---
2     

输出需要是 table1,没有 id=2 的行。

如何使用 Linq 做到这一点?

提前致谢。

4

2 回答 2

0

检查这个 SO 帖子:在 linq 连接中是否存在“不相等”

var filteredDataTable = tableA.Except(tableB);

问候

于 2012-08-06T06:53:00.353 回答
-1

您可能会从第二个 DataTable 中获得一个 ID 列表,例如:

var tempList = (from d in dt2.AsEnumerable()
            select d.Field<int>("ID")).ToList();

稍后您可以使用!Contains从第一个数据表中检查 Not In,例如:

var result = from t in dt1.AsEnumerable()
             where !tempList.Contains(t.Field<int>("ID"))
             select t;
于 2012-08-06T07:12:00.553 回答