У меня есть модель, которая включает в себя NODES и RELATIONSHIPS (которые связывают узлы вместе, с помощью parent_node, child_node).Как я могу кодировать рекурсивный запрос в модели Entity Framework?
Q1 - Есть ли способ в EF/Linq-to-сущностях выполнить запрос на узлах (например, context.Nodes ..), чтобы найти в графике «все родители» или «или дети»?
Q2 - Если нет в Linq-to-entity, есть ли другой способ сделать это иначе, чем написать метод, который вручную проходит и делает это?
Q3 - Если руководство является единственным способом сделать это, следует ли мне беспокоиться о количестве обращений к базе данных, которые будут поступать в базу данных, поскольку метод продолжает рекурсию через данные? Или, более конкретно, есть ли функция кеширования EF, которая может помочь здесь в обеспечении эффективности метода с точки зрения «количества обращений к базе данных»?
благодарит
благодарит
спасибо tsinik - в этом случае вы знаете, есть ли способ в EF эффективно не загружать какие-либо параметры для всех узлов, которые я собираю на графике, пока они не используются? т.е. ленивая загрузка на уровне атрибута? т.е. если я собираюсь загружать много объектов сущности в граф, я думал, что, по крайней мере, до тех пор, пока загружается только основной объект с отношениями FK, может быть лучше с позиции памяти – Greg
столько, сколько я знаю, там не является ленивой нагрузкой на уровень атрибута, но вы можете сопоставить несколько объектов для каждой таблицы, чтобы вы могли разделить узел узла на 2 и иметь дело только с соответствующими данными. – tsinik