У меня есть иерархия сущностей с несколькими слоями, один из которых содержит объекты, число которых может исчисляться десятками тысяч. Бывают случаи, когда мне нужен только объект верхнего уровня, но я обнаруживаю, что Entity Framework загружает все в иерархии.
Я даже пробовал явную ленивую загрузку, но безрезультатно.
using (var db = new MyEntities())
{
db.Configuration.ProxyCreationEnabled = true;
db.Configuration.LazyLoadingEnabled = true;
var daoDict = (from d in db.stt_dictionary
where d.id == dictionaryID && !d.deleted
select d).FirstOrDefault();
}
Во время отладки, если я пройду через это, а затем наведу указатель мыши на daoDict
, я обнаружу, что его свойства коллекции (которые равны virtual
) содержат тысячи объектов.
Почему?
null
, но это не так. Или акт вызова.Count
извлекает данные? 17.03.2015