使用REST/neo4jclient向c#中的空间层添加节点
我正在用c#制作一个基于位置的应用程序,我正在使用neo4j和neo4j空间插件来处理它。为了与spatial插件通信,我必须使用它的RESTAPI,因为neo4jClient目前不支持它。现在我想,我需要所有的neo4j节点id,我的问题是,有没有办法通过它的数据(在本例中,是lat/lon)获得先前插入节点的节点id,或者有没有更好的方法将节点添加到空间层 编辑:使用REST/neo4jclient向c#中的空间层添加节点,c#,neo4j,neo4j-spatial,C#,Neo4j,Neo4j Spatial,我正在用c#制作一个基于位置的应用程序,我正在使用neo4j和neo4j空间插件来处理它。为了与spatial插件通信,我必须使用它的RESTAPI,因为neo4jClient目前不支持它。现在我想,我需要所有的neo4j节点id,我的问题是,有没有办法通过它的数据(在本例中,是lat/lon)获得先前插入节点的节点id,或者有没有更好的方法将节点添加到空间层 编辑: 我还将neo4jClient用于其他插入和检索首先,除了通过节点ID将节点添加到空间节点之外,没有其他方法 您可以使用函数has
我还将neo4jClient用于其他插入和检索首先,除了通过节点ID将节点添加到空间节点之外,没有其他方法 您可以使用函数has(n.Property)编写检索所有节点ID的密码查询,例如: 实际上还有另一个REST终点:addMultipleNodesToLayer。但似乎它还没有被推。我已经问过了,希望能很快得到
// cypher-query to retrieve node Ids
client.Cypher
.Match("(n:SpatialIndex)")
.Where("has(n.lat)")
.AndWhere("has(n.lon)")
.Return(node => node.Id());
// add existing node to SimplePoint-Layer
public void AddNodeToLayer(long nodeId, string layer)
{
string URINode = string.Format("{0}node/{1}",_client.BaseUrl, nodeId);
string json = string.Format("{{\"layer\":\"{0}\", \"node\":\"{1}\"}}", layer, URINode);
string URIAdd = string.Format("{0}ext/SpatialPlugin/graphdb/addNodeToLayer", _client.BaseUrl);
HTTPCommand(new Uri(URIAdd), json);
}