1

我想使用 C# neo4j 客户端检索节点之间的关系。

使用此查询:

var lastRel = myGraphClient.Cypher
              .Start(new { parent = parentRouteNode })
              .Match("(parent)-[lastR:LAST]->(child)")
              .Return(lastR => lastR.As<Relationship<Last>>()).Results;

我能够以类似的方式返回父节点和子节点,但是对于关系,我得到以下异常:

“Neo4jClient 在反序列化来自服务器的响应时遇到异常。这可能是 Neo4jClient 中的一个错误。”

这真的是一个错误还是我做错了什么?

4

2 回答 2

1

在检索关系时使用RelationshipInstance<T>而不是。Relationship<T>

var lastRel = myGraphClient.Cypher
              .Start(new { parent = parentRouteNode })
              .Match("(parent)-[lastR:LAST]->(child)")
              .Return(lastR => lastR.As<RelationshipInstance<Last>>()).Results;

请参阅此处:从 Cypher 查询中检索关系

于 2013-09-02T09:54:28.753 回答
0

不要使用任何包装器类型:

var lastRel = myGraphClient.Cypher
    .Start(new { parent = parentRouteNode })
    .Match("(parent)-[lastR:LAST]->(child)")
    .Return(lastR => lastR.As<Last>())
    .Results;
于 2013-10-25T22:59:07.590 回答