Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j客户端在两个现有节点之间创建关系_Neo4j_Cypher_Neo4jclient - Fatal编程技术网

Neo4j客户端在两个现有节点之间创建关系

Neo4j客户端在两个现有节点之间创建关系,neo4j,cypher,neo4jclient,Neo4j,Cypher,Neo4jclient,在对现有关系使用“展开”时,我尝试在两个节点之间创建关系(我尝试从以前的数据库迁移) So Links=保存目标和源上每个节点Id的关系(Id不同于neo4j Id) 密码不会返回任何错误,我确实设法添加了节点,但由于某些原因,我无法理解为什么没有创建节点之间的关系 我正在使用这个密码: graphClient.Cypher .Unwind(graph.Links, "singleLink") .Match("(firstNode:Node{id: singleLink.Sour

在对现有关系使用“展开”时,我尝试在两个节点之间创建关系(我尝试从以前的数据库迁移)

So Links=保存目标和源上每个节点Id的关系(Id不同于neo4j Id)

密码不会返回任何错误,我确实设法添加了节点,但由于某些原因,我无法理解为什么没有创建节点之间的关系

我正在使用这个密码:

graphClient.Cypher
    .Unwind(graph.Links, "singleLink")
    .Match("(firstNode:Node{id: singleLink.Source , projectId: {innerProjectId}})", "(secondNode:Node{id: singleLink.Target , project: {innerProjectId}})")
    .WithParam("innerProjectId",project.Id)
    .Create("(firstNode:Node)-[:ConnectedTo{source: singleLink.Source, target: singleLink.Target}]->(secondNode:Node)")
    .ExecuteWithoutResults();           

非常感谢。

我想这是你想要的

MATCH (n1), (n2)
WHERE ID(n1) = 1 AND ID(n2) = 2
CREATE (n1)-[r:RELATION]->(n2) 

关于“我确实设法添加节点”:您提供的代码永远不会尝试创建任何节点,因为
create
子句只有在
MATCH
子句已经找到节点时才会执行。确实存在具有指定的
id
projectId
值的
节点吗?是。我确信
DebugQueryText
是什么样子的?我需要.NET客户端密码,我没有使用Neo4j ID(这是一个坏习惯),所以ID(n)对我来说不好,我放在里面的ID是由SQL生成的。你可以在Neo4j浏览器中自己测试它吗<代码>匹配(n1{Id:1}),(n2{Id:2})创建(n1)-[r:relationship]->(n2)
在浏览器中,我正在编写的密码正在工作,这就是为什么它对我如此奇怪的原因。。我真的认为我写的密码很好,应该能用。我用两个参数进行匹配,不仅是ID,还有另一个参数。好了,我现在对.NET客户端没有任何了解。也许你可以加入Neo4j slack,在那里询问有人可以在Stackoverflow上查看这个问题。