Указанное выражение LINQ содержит ссылки на запросы, связанные с различными контекстами.
Я получаю сообщение об ошибке при попытке объединить несколько таблиц в запросе:
Указанное выражение LINQ содержит ссылки на запросы, связанные с различными контекстами.
Это сбивает с толку, потому что кажется, что я использую разные контексты в запросе, но я не:
public static IQueryable<Company> GetAll(bool supportsMMAT)
{
return from c in Context.Companies
join v in Context.Vehicles on c.CompanyIdNumber equals v.CompanyIdNumber
join mt in Context.ModemTypes on v.ModemTypeId equals mt.Id
where !c.CompanyShutOff
&& (!supportsMMAT || mt.Model == "MMAT")
select c;
}
Есть идеи? Сначала я использую код EF4 CTP5, если это что-то меняет...
1 ответ
Решение
Это может произойти, если ваше свойство Context каждый раз возвращает новый экземпляр.