У меня следующий запрос:
var MyQuery = from e in ContractContext.Equipments.Include("Manufacturers")
where e.Customers.ID == customer.ID
select e;
И все работает, я получаю мое оборудование, и он загружает таблицу производителей правильно (охотно). Но когда я пытаюсь выполнить следующий запрос «многие ко многим»:
var MyQuery = from e in ContractContext.Equipments.Include("Manufacturers")
where e.Customers.ID == customer.ID
from cce in e.ContractEquipments
where cce.Contracts.EndedOn >= DateTime.Today
select e;
где "ContractEquipments" - это поиск "многие ко многим" между "Оборудованием" и "Контрактами", но когда этот запрос выполняется, таблица Производители больше не загружается легко. Любая идея, как это исправить, не делая следующее:
if (MyEntity.Manufacturers.IsLoaded == false)
MyEntity.ManufacturersReference.Load()
Этот проект занимает несколько часов, и я хочу уменьшить количество обращений к базе данных.
РЕДАКТИРОВАТЬ # 1:
Я тоже безуспешно пытался:
var MyQuery = from e in ContractContext.Equipments.Include("Manufacturers")
where e.Customers.ID == customer.ID
join cce in ContractContext.ContractEquipments
on e.ID equals cce.Equipments.ID
where cce.Contracts.EndedOn >= DateTime.Today
select e;