Я недавно начал использовать Neo4JClient для интеграции с .NET, и я (в конечном итоге) понял, что из этого вышло. Однако это меня насторожило.Как получить путь в Neo4jClient?
Мне интересно получить пути назад из запроса Cypher, желательно в объект POCO, поэтому я могу работать с интерфейсом для этих запросов.
Итак, мой вопрос в основном заключается в том, как это сделать в Neo4JClient? И если я не могу, любой из других клиентов Neo4J .NET поддерживает это?
Образца высчитывать запрос:
start n = node:idx(id="{id}")
MATCH p=(n)-[:RELATED_TO*0..3]-()
RETURN p;
Итак, я хочу, чтобы все узлы вокруг конкретного узла с обеими входящими и исходящими отношениями на глубину 3. Там другой тип запроса тоже, но он использует тетивы и Мне нужно выяснить, поддерживает ли Neo4JClient (другой вопрос там).
До сих пор я использовал Gremlin с открытыми и закрытыми наборами для заполнения пользовательского объекта информацией о его зависимостях. Это отнюдь не эффективно, поэтому почему-то я хотел бы сделать это с помощью путей. Соответствующий объект выглядит немного так.
public class ConnectedNode : BaseNode
{
public List<NodeRelation> RelatedNodes { get; set; }
public ConnectedNode()
{
RelatedNodes = new List<NodeRelation>();
}
}
public class NodeRelation
{
// ... various properties for relationship payload type stuff
public ConnectedNode RelatedNode { get; set; }
public RelationshipDirection Direction { get; set; }
}
Я рад за все, что отодвигает данные узла и отношений на пути, я ищу тех пор, пока он эффективен.
У вас есть пример запроса, для которого вы хотите получить пути? то, что вы пытаетесь? –
@ Крис, да, конечно. Я поправлю свой ответ на примерный запрос. Вы спрашиваете, могу ли я предположить, что он поддерживает некоторые пути, но не другие? –