我有一个有效的密码查询,但无法让它在Neo4jclient中运行。
我的密码查询是
start n=node(*) where has(n.Name) and n.Name =~ 'X.*' return n;
返回所有具有以X开头的Name属性的节点 我故意不在这里使用索引或关系。
我的第一次幼稚尝试(甚至不使用我计划使用的正则表达式)在res.Results上以超时(!)失败
var res = _client.RootNode
.StartCypher("n")
.Where<Meeting>(m => m.Name == "X")
.Return<Meeting>("m");
答案 0 :(得分:4)
尝试:
var query = _client.Cypher
.Start("n", graphClient.RootNode)
.Where("has(n.Name)")
.And()
.Where("n.Name =~ 'X.*'")
.Return<Meeting>("n");
这适用于我的机器,你会得到如下结果:
var results = query.Results;
修改强>
我想我已经意识到为什么你的问题,在开始时,你放StartCypher("n")
然后使用m
而不是n
。因此Return<Meeting>("m")
应为Return<Meeting>("n")