EF6 вызов включает после asenumerable
У меня есть сущность с несколькими обычными отношениями 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, но после этого обычное включение не работает, что также логично. Есть ли какое-то решение или какой-то другой способ, которым я мог бы использовать для достижения этой цели?