LINQ to Entity,加入NOT IN表

Sla*_*der 10 sql linq-to-entities

我的大脑现在似乎很糊涂了!我正在使用LINQ to Entity,我需要从一个表中获取一些不存在于另一个表中的数据.

例如:我需要表A中的groupID,groupname和groupnumber,它们在表B中不存在.groupID将与其他相关信息一起存在于表B中.这些表没有任何关系.在SQL中它会非常简单(有一个更优雅和有效的解决方案,但我想画一幅我需要的图片)

SELECT
   GroupID,
   GroupName,
   GroupNumber,
FROM
   TableA
WHERE
   GroupID NOT IN (SELECT GroupID FROM TableB)
Run Code Online (Sandbox Code Playgroud)

使用Entity Framework/LINQ to Entity有一种简单/优雅的方法吗?现在我有一堆查询命中数据库,然后进行比较,等等.它非常混乱.

Nix*_*Nix 15

你可以使用任何

  var temp =context.TableA
         .Where(x=>!context.TableB.Any(y=>y.GroupID!=x.GroupID))
         .Select(x=>new { GroupID = x.GroupID, GroupName=x.GroupName, GroupNumber = x.GroupNumber}).ToList();
Run Code Online (Sandbox Code Playgroud)