Neo4j 如何在noe4jclinet中加载所有相关节点而不将其包含在cypher中

Neo4j 如何在noe4jclinet中加载所有相关节点而不将其包含在cypher中,neo4j,cypher,neo4jclient,Neo4j,Cypher,Neo4jclient,我正在使用基于用户搜索词的Neo4jClient为cypher构建一个查询。 我的问题是如何将所有相关节点加载到我正在搜索的第一个节点 以下是neo4jclient中的代码示例: q.Return(post => post.As<Post>()).OrderBy("post.creationDate"); 我正在搜索帖子,但我需要在结果集中包含所有要发布的相关节点。确保为:User(用户名)和:HashTag(值)建立索引 你在这里创建了一个叉积,但不确定你是否想要它,也许联

我正在使用基于用户搜索词的Neo4jClient为cypher构建一个查询。 我的问题是如何将所有相关节点加载到我正在搜索的第一个节点

以下是neo4jclient中的代码示例:

q.Return(post => post.As<Post>()).OrderBy("post.creationDate");

我正在搜索帖子,但我需要在结果集中包含所有要发布的相关节点。

确保为:User(用户名)和:HashTag(值)建立索引

你在这里创建了一个叉积,但不确定你是否想要它,也许联合会更好

您可以只扩展模式以包含off:Post-too的其他关系

MATCH (o)-[r]-(post:Post)-[:HAS_MentionedUsers]->(assignee1307989068:User),
WHERE (assignee1307989068.UserName = "mhs")
RETURN post,o,r
UNION
MATCH (o)-[r]-(post:Post)-[:HAS_HashTags]->    (Hashtag1841024507:HashTag)
WHERE (Hashtag1841024507.Value = "myTag")
RETURN post,o,r

谢谢Michael,但正如我提到的,它将如何与neo4jclient(即.Net库)一起工作。正如我所说,我正在根据最终用户提供的搜索词构建这个查询。我不确定如何在cypher查询的末尾包含o,r,但我不确定是否有。我可以在neo4jclient的结果集中包含o和r,但是如果post是单独存在的,没有任何关系呢。这会是个问题吗?我可以看出这里有一个解决方案。。。。!问题是(o)没有捕获assignee1307989068和Hashtag1841024507,我必须在查询的返回部分包含assignee1307989068和Hashtag1841024507,这在neo4jclient中几乎是不可能的,当我自动构建查询时。
MATCH (o)-[r]-(post:Post)-[:HAS_MentionedUsers]->(assignee1307989068:User),
WHERE (assignee1307989068.UserName = "mhs")
RETURN post,o,r
UNION
MATCH (o)-[r]-(post:Post)-[:HAS_HashTags]->    (Hashtag1841024507:HashTag)
WHERE (Hashtag1841024507.Value = "myTag")
RETURN post,o,r