C# Neo4JClient创建唯一约束

C# Neo4JClient创建唯一约束,c#,neo4jclient,C#,Neo4jclient,我正在尝试使用在以下位置找到的接受答案创建唯一约束: 我正在使用Neo4jClient v1.1.0.11 例如: graphClient.Cypher .CreateUniqueConstraint("identity", "property") .ExecuteWithoutResults(); 问题是,当我执行此示例时,我收到以下异常: SyntaxException:无效输入“)”:应为标识符字符、空格或节点标签(第1行第31列(偏移量:30)) “对(标识)断言属性的

我正在尝试使用在以下位置找到的接受答案创建唯一约束:

我正在使用Neo4jClient v1.1.0.11

例如:

graphClient.Cypher
    .CreateUniqueConstraint("identity", "property")
    .ExecuteWithoutResults();
问题是,当我执行此示例时,我收到以下异常:

SyntaxException:无效输入“)”:应为标识符字符、空格或节点标签(第1行第31列(偏移量:30)) “对(标识)断言属性的创建约束是唯一的” ^

当我使用此语句时:

client.Cypher
    .Create("CREATE CONSTRAINT ON (c:User)ASSERT c.UserId IS UNIQUE")
    .ExecuteWithoutResults();
我收到这个错误:

SyntaxException:无效输入“O”:应为“r/r”(第1行第16列(偏移量:15)) “对(c:User)断言c.UserId创建约束是唯一的” ^

我的问题是,使用Neo4JClient创建唯一索引的正确方法是什么?请举个例子


谢谢

在您的第一个代码片段中,您没有指定要在其上创建约束的内容。添加标识符、标签和属性,如下所示

graphClient.Cypher
    .CreateUniqueConstraint("c:User", "c.UserId")
    .ExecuteWithoutResults();
您的第二个代码片段只是添加了两次create。也许可以这样解决

graphClient.Cypher
    .Create("CONSTRAINT ON (c:User) ASSERT c.UserId IS UNIQUE")
    .ExecuteWithoutResults();

尽管我会推荐第一种方法…

附加问题:你能告诉我这句话的C#方式吗:client.Cypher.Create(“INDEX ON:User(FullName)”).ExecuteWithoutResults()@duber这就是我要做的事情,创建索引没有特定的入口点,就像创建唯一约束一样。如果您想要它-可以在
Neo4jClient
github页面上随意添加一个问题,我可以查看它-如果您愿意,也可以执行拉取请求-所有这些都很乐意接受:)谢谢,我会尝试的