我试图在C#中使用neo4jclient创建一个neo4j数据库... 我想在label属性(ID)上创建一个约束,返回最大值,然后创建数据库。
var neotest = new GraphClient(new Uri("http://localhost:7474/db/data"), "username", "password");
neotest.Connect();
neotest.Cypher
.CreateUniqueConstraint("n:Solution", "n.ID")
.ExecuteWithoutResults();
string queryString = QueryHelper.GetQueryObject(Model);
var neotest1 = new GraphClient(new Uri("http://localhost:7474/db/data"),"username","password");
neotest.Connect();
neotest.Cypher
.Create("(n:Solution{" + queryString + "})")
.ExecuteWithoutResults();
上面的代码创建了一个neo4j数据库,并且还为ID属性添加了约束。
但是,如何获取ID属性的最大值并相应地增加它?
密码查询是:
match(n:Solution)return max(n.ID)
但无法弄清楚如何实现它并使用最大值。 请帮忙。
答案 0 :(得分:0)
获取MAX
的查询是:
var query = client.Cypher
.Match("(n:Solution)")
.Return(() => Return.As<int>("MAX(n.ID)");
正如旁注 - 您不需要Connect
每个查询的客户端的新实例,您可以通过一个客户端实例完成所有操作。
事实上 - 查看代码,实际上甚至根本不使用neotest1
作为变量。