EF6通话包括在无可疑的

时间:2016-09-13 09:07:46

标签: c# .net include entity-framework-6 iqueryable

我有一个具有一些普通1对多关系的实体和一个隐含1对多关系的集合,没有定义任何关系。

我想要做的就是让它像以下一样协同工作:

IQueryable<Employee> leftJoin =
            _dbContext.EmployeeList
                .GroupJoin(
                    inner: _dbContext.ContactList.Where(x => x.TableType == TableType.Employee),
                    outerKeySelector: employee => employee.EmployeeId,
                    innerKeySelector: contact => contact.TableId,
                    resultSelector: (employee, contacts) => new { employee, contacts = contacts.DefaultIfEmpty() }
                )
                .AsEnumerable()
                .Select(x =>
                {
                    x.employee.ContactList = x.contacts;
                    return x.employee;
                })
                .AsQueryable()
                .Include(x => x.EmployeeRoleMapList);

主要的麻烦是我需要以某种方式从连接集中初始化Employee.ContactList,在IQuerable中它是不可能的,我已经将它转换为IEnumerable但是在那之后普通的包含不包含#n;&#39;也是合乎逻辑的工作。是否有一些解决方法或一些不同的方法可以用来实现这个目标?

0 个答案:

没有答案