2011-03-19 52 views
0

我有3個表稱爲Users,Groups和UserGroups。 UserGroups是許多2個連接表。使用Linq2Sql左連接查詢

我想寫一個LINQ聲明,讓我只有那些羣體 沒有一個用戶組的記錄其中UserID是說1

請提供L2Q代碼,如果可能的

馬爾科姆

回答

1

那麼,你可以表示爲:

var query = db.Groups.Where(x => !db.UserGroups 
            .Any(y => y.UserId == 1 && 
               y.GroupId == x.GroupId)); 

......假設我已經正確地理解了你。

+0

我猜'UserId'在'UserGroups'中,而不是'Groups'。 – 2011-03-19 09:35:39

+0

沒有在LinqPad中不起作用。我想要獲得用戶所沒有的所有用戶組。這是更好的解釋。 – Malcolm 2011-03-19 09:37:02

+0

@Malcolm:試試這個更新版本。如果你可以發佈欄目等,這將非常有幫助,所以我不必猜測。同樣,我使用的是非OO方法,因爲我不知道您設置了哪些關聯。 – 2011-03-19 09:39:52