我无法通过Neo4jClient和Cypher从Neo4j中获取对象。
var client = new GraphClient(new Uri("http://mymachine:7474/db/data"));
client.Connect();
var myList = client.RootNode.StartCypher("root")
.Match("root-[:RELATED_TO]->(user)")
.Return<User>("user").Results;
我在myList [0]中获得了一个User对象,但它的属性为空。
我通过
获得相同的(具有空属性的对象)client.ExecuteGetCypherResults<User>(
new CypherQuery("start n=node(1) return n;",null, CypherResultMode.Set)
);
我忽略了哪些显而易见的事情?
(Neo4j 1.8 MS5,Neo4jClient 1.0.0.388)
/ Neo4jClient / Neo4j noob。
答案 0 :(得分:1)
耶!我像这样改为Node:
var myList = client.RootNode.StartCypher("root")
.Match("root-[:RELATED_TO]->(user)")
.Return<Node<User>>("user").Results;
最后
var myList = client.RootNode.StartCypher("root")
.Match("root-[:RELATED_TO]->(user)")
.Return<Node<User>>("user").Results
.Select( nu => nu.Data );
最简单的例子应该是:
var myList = client.ExecuteGetCypherResults<Node<User>>(
new CypherQuery("start n=node(1) return n;", null, CypherResultMode.Set))
.Select(un => un.Data);
其中1是用户节点的ID。