2016-12-19 80 views
0

我想有使用實體框架和LINQ做到了這一點。SQL查詢:在LINQ如何訪問列表中的對象的屬性

SELECT DISTINCT Users.ID as UserID, Users.FirstName, Users.Surname, Users.ADID 
FROM Users INNER JOIN Journals ON Users.ID = Journals.UserID 
WHERE(((Journals.CompanyID) = {1})  

所以我需要用戶(用戶擁有期刊的名單),其中在該Journals.Company.CompanyID(每個日記有一個公司)等於一些CompanyID。

我掙扎創建這個LINQ查詢。

+0

LEFT JOIN並在其中添加您的條件我的首選方法是什麼? – Furtiro

+0

context.Users.Where(U => u.Journals.CompanyID == ID);如果我正確地想象你的數據上下文,查詢應該看起來像這樣。 –

+0

請發佈您嘗試過的樣品。 – JuanR

回答

1

您可以嘗試如圖below.Here db是您的上下文。

(from u in db.Users 
join j in db.Journals on u.ID equals j.UserID 
where j.CompanyID == 1 
select u).Distinct().ToList(); 
1
db.Users.Where(u => u.Journals.Any(j => j.CompanyID == 1)) 

是因爲你並不需要使用不同的邏輯(使用對象時感覺怪怪的)