我是neo4j和neo4jclient的新手,所以请原谅我的问题是否在正确的轨道上。
通过改变cypher查询,可以在一次调用中创建多个节点和关系。我想创建一个类似于neo4j附带的电影示例数据的查询,以便在一个帖子中创建多个节点和关系到REST API。
是否可以使用neo4jclinet编写这样的查询?
我已经看过下面的文档,但我看不到我所追求的查询类型的示例。我对此很新,所以也许我错过了它。
答案 0 :(得分:1)
通常有两种方法可以做到这一点。首先是使用具有多个查询的批处理,isn't supported by the neo4jclient。查看源代码显示存在某种批处理支持(如GraphClient.ExecuteBatch
方法),但这些是私有的。
第二种方法是通过将每个节点添加为参数来构建Cypher查询,这应该导致here所述的请求。代码如下所示:
var queryBuilder = client.Cypher.
Create ("(movie:Movide {newMovie})");
foreach (Movie movie in movies) {
queryBuilder = queryBuilder.WithParam ("newMovie", movie);
}
queryBuilder.ExecuteWithoutResults ()
然而,抛出ArgumentException:“已在查询中定义了具有给定键的参数。”如果列表中有多个元素。
所以你可能会遇到一些令人讨厌的解决方法:
在我看来,这似乎值得向Readify报告。