2016-03-09 84 views
0

我有一個Linq查詢正在連接兩個表,並且我試圖只拉取具有與第三個表中的相關聯繫人的客戶端的記錄ID爲19. ClientProjects和Clients表之間沒有導航屬性(ClientProjects是來自外部源的表,無法修改)。客戶和聯繫人有多對多的關係。我的查詢出了什麼問題,以及正確的方法是什麼?從第三個表中選擇與兩個已連接表中的一個相關的記錄

ClientProjects.Join(Clients.Where(a => a.Contacts.FirstOrDefault().Id == 19), a => a.ClientId, c => c.HistoricClientId, (a, c) => new {?.ContactName a.DisplayName }) 

回答

0

美好的一天,嘗試在您的加入聲明加入.INCLUDE()

ClientProjects.Join(Clients.Include(x => x.Contacts).Where(a => a.Contacts.FirstOrDefault().Id == 19), a => a.ClientId, c => c.HistoricClientId, (a, c) => new {c.Contacts.ContactName a.DisplayName }) 
相關問題