Entity Framework 排除结果

Entity Framework exclude result

我想排除查询结果。

例如我有:

Table_1 (Id, name)
Table_2 (Id, Table_1_Id)

而且,我想编写 return 仅来自 Table_1 的结果的查询,而 Table_2 中不存在。是一对多.

的关系

有什么想法吗?

var query = db.Table_1.Include("Table_2").Where(????

你应该使用 Except:

var query = db.Table_1.Select(MapToType).Except(db.Table_2.Select(MapToSameType));

如果您使用的是不支持它的旧版 EF,您可以使用 All:

var query = db.Table_1.Where(x => db.Table_2.All(y => y.Table_1_Id != x.Id);