C# 如何从neo4j数据库中获取数据并使用C将其绑定到网格视图中?
我用C编写了这个密码查询:C# 如何从neo4j数据库中获取数据并使用C将其绑定到网格视图中?,c#,.net,database,neo4j,neo4jclient,C#,.net,Database,Neo4j,Neo4jclient,我用C编写了这个密码查询: var myClint = new GraphClient(new Uri("http://localhost:7474/db/data"), "neo4j", "1412"); myClint.Connect(); var getName= myClint.Cypher.Match("(n:Person) .Return(n => n.As<Person>())
var myClint = new GraphClient(new Uri("http://localhost:7474/db/data"), "neo4j", "1412");
myClint.Connect();
var getName= myClint.Cypher.Match("(n:Person)
.Return(n => n.As<Person>())
.Results;
我在Person类中使用setter和getter来获取Person节点中每个人的姓名、ssn和年龄。我想在网格视图上显示这些信息。我用sql server做到了这一点,但我不知道如何用neo4j做到这一点
提前谢谢
本质上,您需要创建自己的DataTable,您可以使用如下代码手动创建:
public static DataTable ConvertToTable(IEnumerable<Person> people)
{
DataTable dt = new DataTable();
dt.Columns.Add("Name");
dt.Columns.Add("Age");
foreach (var person in people)
{
var row = dt.NewRow();
row[0] = person.Name;
row[1] = person.Age;
dt.Rows.Add(row);
}
return dt;
}
但这意味着您必须为每种类型编写一个,因此您可以这样做:
public static DataTable ConvertToTableAutomatic<T>(IEnumerable<T> items)
{
DataTable dt = new DataTable();
var properties = typeof(T).GetProperties();
foreach (var property in properties)
dt.Columns.Add(property.Name);
foreach (var item in items)
dt.Rows.Add(FillRow<T>(dt.NewRow(), item, properties));
return dt;
}
private static DataRow FillRow<T>(DataRow row, T item, PropertyInfo[] properties)
{
foreach (var property in properties)
row[property.Name] = property.GetValue(item);
return row;
}
但是请记住-您将无法用此更新Neo4j DB,只需显示信息即可。您与SQL Server绑定的代码是什么-您是否正在尝试绑定以便使用DataGrid编辑/添加etc?string abc=ConfigurationManager.ConnectionString[ConnectionString G1].ConnectionString;SqlConnection con=新的SqlConnectionabc;不公开;SqlCommand cmd=con.CreateCommand;cmd.CommandType=CommandType.Text;cmd.CommandText=从Person中选择P.name、P.age作为P;SqlDataAdapter dAdapt=新的SqlDataAdaptercmd;DataTable dt=新的DataTable;达达普特·菲尔特;GridView1.DataSource=dt;GridView1.1数据绑定;con.关闭;我在neo4j和SQL上有相同的数据。我正在学习neo4j。