У меня есть дизайн Entity Framework с несколькими таблицами, которые определяют «график». Таким образом, может быть большая цепочка отношений между объектами в нескольких таблицах через концепцию родительских / дочерних отношений.
Что такое эффективный способ "обхода дерева" по моим данным Entity Framework?
То есть я предполагаю, что не хотел бы загружать полный набор всех узлов и связей из базы данных с целью обхода дерева, где конечным результатом может быть только определение конечных узлов? Или это будет нормально, если ленивая загрузка может работать на уровне столбцов / параметров?
В противном случае, как я могу загрузить только скелет объектов, а затем, когда нужно обратиться к каким-либо атрибутам, иметь их ленивую загрузку?
Другая альтернатива, которую я предполагаю, состоит в том, чтобы просто нажимать на базу данных, когда происходит процедура "обход дерева". Возможно, лучше начать с простого, а затем протестировать производительность, но тогда смысл этого вопроса заключается в том, что если бы проблема была в производительности, то в таком случае следовало бы пойти дальше.
РЕДАКТИРОВАТЬ: Я думал о ленивой загрузке на уровне атрибутов - то есть для каждого объекта NODE, который я загружаю, когда расширяю график, загружая только ID и внешние ключи, то есть достаточно для построения графа узлов в памяти. Тогда, если я действительно хочу получить информацию от определенного узла в памяти, информация об атрибутах может быть получена «ленивым» подходом. Знаешь, возможно ли это? Не уверен, что так будет лучше в целом?