我尝试使用Neo4Jclient以编程方式将信息保存到Neo4J数据库。
我一直试图效仿这些例子,但它似乎并没有起作用。
我已经创建了一个似乎有用的数据库连接,但由于以下行,我的代码无法编译..
public void SaveNewRootItem(string child)
{
client = new GraphClient(new Uri([ConnectionStringhere]));
client.Connect();
client.Cypher
.Create("(m:LinkItem {child})")
.WithParams("child", child);
}
根据示例on the wiki for the opensource repo,我应该在" WithParams"中提供参数化信息。
我做错了什么?
答案 0 :(得分:2)
我想我知道你在做什么,假设存在child
,你需要做一些改变。
首先,您需要使用WithParam
而不是WithParams
,之后,要将其放入数据库,您需要ExecuteWithoutResults()
,因此您的查询将如下所示:
client.Cypher
.Create("(m:LinkItem {child})")
.WithParam("child", child)
.ExecuteWithoutResults();
如果您确实想要使用WithParams
,则必须提供字典:
client.Cypher
.Create("(m:XX {child})")
.WithParams(new Dictionary<string, object>{{"child", child}})
.ExecuteWithoutResults();
一般来说,如果你在一个查询中有很多参数,这很有用,无论如何都归结为相同。