使用Linq2Sql左连接查询
问题描述:
我有3个表称为Users,Groups和UserGroups。 UserGroups是许多2个连接表。使用Linq2Sql左连接查询
我想写一个LINQ声明,让我只有那些群体 没有一个用户组的记录其中UserID是说1
请提供L2Q代码,如果可能的
马尔科姆
答
那么,你可以表示为:
var query = db.Groups.Where(x => !db.UserGroups
.Any(y => y.UserId == 1 &&
y.GroupId == x.GroupId));
......假设我已经正确地理解了你。
我猜'UserId'在'UserGroups'中,而不是'Groups'。 – 2011-03-19 09:35:39
没有在LinqPad中不起作用。我想要获得用户所没有的所有用户组。这是更好的解释。 – Malcolm 2011-03-19 09:37:02
@Malcolm:试试这个更新版本。如果你可以发布栏目等,这将非常有帮助,所以我不必猜测。同样,我使用的是非OO方法,因为我不知道您设置了哪些关联。 – 2011-03-19 09:39:52