Linq Join с оператором включения

IQueryable<Employee> emps = CreateObjectSet<Employee>()
                                  .Include(u => u.Departments)
                                  .AsQueryable();
IQueryable<Products> prods = CreateObjectSet<Products>().AsQueryable();

CreateObjectSet - это CreateObjectSetMethod ObjectContext

        return (from emp in emps
                join prod in prods
                on emp.ProductID equals prod.ProductID
                where emp.EmployeeID == 10
                select employee).ToList();

Проблема в первой строке, я использую оператор include и включаю отделы с сотрудниками, у которых в возвращаемых значениях нет отделов, поскольку они никогда не включаются. Пожалуйста, предложите что-нибудь.

Это просто демонстрационный запрос, фактический запрос очень сложен, поэтому, пожалуйста, не предлагайте мне не использовать оператор соединения, а использовать простые предложения include и where, которые мне не подходят в моем сценарии.

Спасибо

12
задан johnny 5 22 February 2018 в 21:12
поделиться