2013-08-31 18 views
1

我想使用C#neo4j客戶端檢索節點之間的關係。使用此查詢使用neo4j檢索關係C#客戶端

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

我能夠以類似的方式返回母公司和子節點,但對於關係, 我得到以下異常:

「Neo4jClient遇到異常同時反序列化服務器的響應,這可能是Neo4jClient中的一個錯誤。「

這真的是一個錯誤還是我做錯了什麼?

+0

你能後的REST原始響應?很高興看到服務器中的基礎異常。 –

回答

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; 

在這裏看到:Retrieving relationship from Cypher query

+1

不,這不起作用......完全一樣的例外。 – user1275011

0

不要使用任何類型的包裝類型:

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