我最近开始将 Neo4JClient 用于我的 .NET 集成,并且(最终)我已经弄清楚了大部分事情。然而,这个让我难过。
我有兴趣从 Cypher 查询中获取路径,最好是在 POCO 对象中,这样我就可以在前端处理这些查询。
所以我的问题本质上是如何在 Neo4JClient 中做到这一点?如果我不能,其他 Neo4J .NET 客户端是否支持这个?
示例密码查询:
start n = node:idx(id="{id}")
MATCH p=(n)-[:RELATED_TO*0..3]-()
RETURN p;
所以,我希望特定节点周围的所有节点的传入和传出关系都达到 3 的深度。还有另一种类型的查询,但它使用 withs,我需要找出 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; }
}
只要它有效,我很高兴能在我正在寻找的路径上拉回节点和关系数据。