2016-08-10 5 views
0

C#でneo4jclientを使用してneo4jdbを作成しようとしています... ラベルプロパティ(ID)に制約を作成し、最大値を返してデータベースを作成します。C#を使用してneo4jデータベースを作成する

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プロパティの最大値をどのように取得し、それに応じて増分するのですか?

CYPHERクエリは次のとおりです。

match(n:Solution)return max(n.ID) 

しかし、それを実装し、最大値を使用する方法を見つけ出すことはできません。 助けてください。 MAXを取得する

答えて

0

クエリは次のとおりです。

var query = client.Cypher 
    .Match("(n:Solution)") 
    .Return(() => Return.As<int>("MAX(n.ID)"); 

ただ、サイドノートとして - あなたは一つを介してそれをすべてだけで行うことができ、クエリごとにクライアントの新しいインスタンスにConnectする必要はありませんクライアントインスタンス。

実際にコードを見ると、実際にはneotest1を変数として使用していません。

関連する問題