Я почти уверен, что то, что предлагает CatZ, не работает.
Я не думаю, что вы можете сделать это с помощью Включить, но вы можете добиться того же эффекта с помощью проекционного трюка, см. Как отсортировать отношения в Entity Framework
Что вам нужно сделать, это примерно так:
var results = from d in ctx.Departments
select new {
d,
employees = d.Employees.Select(
e => new {
e,
location = e is RemoteEmployee ?
(e as RemoteEmployee).Location :
null
}
)
};
foreach (var result in results)
{
var re = result.d.Employees.First() as RemoteEmployee;
Console.WriteLine("{0} {1} works from {2}",
re.Firstname, re.Surname, re.Location.Name);
}
Обратите внимание, что вам не нужно использовать анонимные типы для получения данных, по сути, выполнение проекции имеет побочный эффект заполнения коллекций в вашем отделе из-за функции Entity Framework, называемой fixup.
Надеюсь, это поможет
Alex