这是我第一次在这里发帖,所以如果这是错误的地方/格式/等,我道歉。
我是C#和neo4j的新手,我无法正确掌握基础知识。我已经浏览了neo4jClient Git Wiki,但我仍遇到问题。我想写代码只是找到一个节点并显示它的一些信息,但我似乎无法让它工作。 Visual Studio没有给我任何错误消息,代码似乎没有工作,因为它没有返回任何名称值,计数器仍然是0.这是代码:
using Neo4jClient;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Neo4jtest
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
var client = new GraphClient(new Uri("http://localhost:7474/db/data"));
client.Connect();
var tomQuery = client.Cypher
.Match("(tom:Person)")
.Where((Person tom) => tom.Name == "Tom Cruise")
.Return(tom => tom.As<Person>());
var peopleNamedTomCruise = tomQuery.Results;
int counter = 0;
foreach (Person value in peopleNamedTomCruise)
{
Console.WriteLine(value.Name);
counter++;
}
Console.WriteLine(counter.ToString());
}
public class Person
{
public string Name {get; set;}
public int Born { get; set; }
}
}
}
至于数据,我正在使用Neo4j“The Movie Graph”练习中的样本数据。
非常感谢任何和所有帮助!
答案 0 :(得分:3)
Neo4j中的属性名称区分大小写。
电影示例使用小写名称,如name
。
您已使用POCO遵循C#约定并使用Name
。
这将导致WHERE
子句不返回匹配项。