У меня был корневой узел (: x) со многими подключенными дочерними узлами, помеченными как: y.Эти дочерние узлы, в свою очередь, имели один дочерний узел, помеченный как: z.
Я хочу получить объект из типа ClassX
, сопоставленного с узлом: X с подключенными детьми и внуком подключенных к каждому ребенку.Это мой код, который возвращает объект и список его дочерних элементов, но внук, принадлежащий дочернему элементу, null
:
_graphClient.Cypher
.OptionalMatch("(myx:X)-[:RELNAME]->(myy:Y)")
.Where((ClassX myx) => myx.Guid == guid)
.Return((myx, myy) => new ClassX
{
Guid = myx.As<ClassX>().Guid,
Status = myx.As<ClassX>().Status,
Childs = myy.CollectAs<ClassY>() as List<ClassY>
})
.Results
.FirstOrDefault();`
ClassY
имеет свойство MyClassZ
типа ClassZ
:
public class ClassY
{
public string Name { get; set; }
public ClassZ MyClassZ { get; set; }
}
Выполнение приведенного выше кода приводит к объекту ClassX
, который содержит дочерний список типа ClassY
.Это работает, как ожидалось.Свойство MyClassZ
однако null
.Как расширить запрос для автоматической загрузки дочернего узла: Z из моего сопоставления его со свойством?