2016-03-09 57 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 }) 
相关问题