c# NEO4J v3 无法创建关系
c# NEO4J v3 can't create relationship
我有一个正在使用 NEO4J 2.3.2 的 c# 项目,在更新到版本 3 后,我开始发现我的系统总是无法创建关系。这就是我的代码
View userView = new View { parent = parent, timestamp = currentTime };
WebApiConfig.GraphClient.Cypher
.Match("(user123:BaseUser{guid: '" + isAuto + "'})", "(y:YoutubeItem{videoId: '" + itemid + "'})")
.CreateUnique("user123-[r:VIEW]->y")
.Set("r = {userView}")
.WithParam("userView", userView)
.ExecuteWithoutResults();
这是个例外
"SyntaxException: Parentheses are required to identify nodes in patterns, i.e. (user123) (line 2, column 15 (offset: 127))\n\"CREATE UNIQUE user123-[r:VIEW]->y\r\"\n ^"
当我回到旧版本时一切正常,我该怎么办?
Cypher 现在强制要求节点必须用括号括起来。
因此,在您的查询中,CreateUnique
行需要如下所示:
.CreateUnique("(user123)-[r:VIEW]->(y)")
顺便说一下,您应该使用 parameters 来注入 isAuto
和 itemId
值。您已经使用 userView
.
这样做了
我有一个正在使用 NEO4J 2.3.2 的 c# 项目,在更新到版本 3 后,我开始发现我的系统总是无法创建关系。这就是我的代码
View userView = new View { parent = parent, timestamp = currentTime };
WebApiConfig.GraphClient.Cypher
.Match("(user123:BaseUser{guid: '" + isAuto + "'})", "(y:YoutubeItem{videoId: '" + itemid + "'})")
.CreateUnique("user123-[r:VIEW]->y")
.Set("r = {userView}")
.WithParam("userView", userView)
.ExecuteWithoutResults();
这是个例外
"SyntaxException: Parentheses are required to identify nodes in patterns, i.e. (user123) (line 2, column 15 (offset: 127))\n\"CREATE UNIQUE user123-[r:VIEW]->y\r\"\n ^"
当我回到旧版本时一切正常,我该怎么办?
Cypher 现在强制要求节点必须用括号括起来。
因此,在您的查询中,CreateUnique
行需要如下所示:
.CreateUnique("(user123)-[r:VIEW]->(y)")
顺便说一下,您应该使用 parameters 来注入 isAuto
和 itemId
值。您已经使用 userView
.