Neo4jclient 节点的默认节点类型<;T>;
我开始使用neo4client API调查Neo4j的使用情况。 我已经创建了一个基本数据库,可以使用web客户端进行查询。我现在正试图构建一个示例C#接口。我在索引查找方面遇到一些问题。我的数据库由具有两个属性的节点组成:conceptID和fullySpecifiedName。已启用自动索引,并且这两个节点属性都列在neo4j.properties的node_keys_indexable属性中 使用Node类时,我的C#中不断出现IntelliSense错误。它似乎被定义为Neo4jclient 节点的默认节点类型<;T>;,neo4jclient,Neo4jclient,我开始使用neo4client API调查Neo4j的使用情况。 我已经创建了一个基本数据库,可以使用web客户端进行查询。我现在正试图构建一个示例C#接口。我在索引查找方面遇到一些问题。我的数据库由具有两个属性的节点组成:conceptID和fullySpecifiedName。已启用自动索引,并且这两个节点属性都列在neo4j.properties的node_keys_indexable属性中 使用Node类时,我的C#中不断出现IntelliSense错误。它似乎被定义为节点,但我不知道该
节点
,但我不知道该提供什么作为类型的值。从这个论坛中考虑这个例子…
var result = _graphClient
.Cypher
.Start(new
{
n = Node.ByIndexLookup("index_name", "key_name", "Key_value")
})
.Return((n) => new
{
N = n.Node<Item>()
})
.Results
.Single();
var n = result.N;
var结果=\u图形客户端
塞弗先生
.开始(新)
{
n=Node.ByIndexLookup(“索引名”、“键名”、“键值”)
})
.返回((n)=>新建
{
N=N.Node()
})
.结果
.Single();
var n=结果n;
节点中的“项”来自哪里?
我已经推断出我应该使用的索引名是node\u auto\u index
,但我无法确定默认的节点类型。项是存储在数据库中的节点类型,因此如果您有,您正在存储一个类:
public class MyType { public int conceptId { get; set; } public string fullySpecifiedName { get;set; } }
您将检索节点
返回
简单流程:
//Store a 'MyType'
_graphClient.Create(new MyType{conceptId = 1, fullySpecifiedName = "Name");
//Query MyType by Index
var query =
_graphClient.Cypher
.Start(new { n = Node.ByIndexLookup("node_auto_index", "conceptId", 1)
.Return<Node<MyType>>("n");
Node<MyType> result = query.Results.Single();
//Get the MyType instance
MyType myType = result.Data;
//存储一个“MyType”
_Create(新的MyType{conceptId=1,fullysspecifiedName=“Name”);
//按索引查询MyType
变量查询=
_塞弗
.Start(new{n=Node.ByIndexLookup(“Node\u auto\u index”,“conceptId”,1)
.返回(“n”);
节点结果=query.Results.Single();
//获取MyType实例
MyType MyType=result.Data;
您可以通过执行.Return(“n”)
而不是节点来绕过结果.Data
步骤,因为在这种情况下,您只会得到一个MyType
的实例。谢谢Chris。一旦有人向您指出这一点,这是非常明显的!