C# 如何在neo4jclient中以自定义类型返回值
我是neo4jclient的新手,不知道如何在neo4jclient中返回自定义类型。 我有以下密码:C# 如何在neo4jclient中以自定义类型返回值,c#,neo4jclient,C#,Neo4jclient,我是neo4jclient的新手,不知道如何在neo4jclient中返回自定义类型。 我有以下密码: var result = client.Cypher .Match("(u:User)-[:" + FriendRelation + "]->(friend:User)") .Return((user, friend) => new RelationInDB(user.As<User>().id, frie
var result = client.Cypher
.Match("(u:User)-[:" + FriendRelation + "]->(friend:User)")
.Return((user, friend) => new RelationInDB(user.As<User>().id, friend.As<User>().id)).Results;
var result=client.Cypher
.Match(((u:User)-[:“+FriendRelation+”]->(friend:User)”)
.Return((user,friend)=>newrelationIndb(user.As().id,friend.As().id)).Results;
我想返回所有具有friend relation的id对,我想在自定义类RelationInDB中存储两个id,但我不知道如何编写返回(我知道上面的返回是错误的)
有人能帮你吗?好的,你会发现有两件事导致了你的问题:
(用户、朋友)=>
,但您的匹配语句具有(u:user)
。您的返回语句应该是:(u,friend)=>
var results = client
.Cypher
.Match("(u:User)-[:" + FriendRelation + "]->(friend:User)")
.Return((u, friend) => new RelationInDB{UserId = u.As<User>().Id, FriendId = friend.As<User>().Id}).Results;
如果您无法更改RelationInDB类,并且需要按原样使用它,则必须使用匿名类型作为返回:
var results = client
.Cypher
.Match("(u:User)-[:" + FriendRelation + "]->(friend:User)")
.Return((u, friend) => new {UserId = u.As<User>().Id, FriendId = friend.As<User>().Id}).Results;
非常感谢!我从数据库里得到了数据。
var results = client
.Cypher
.Match("(u:User)-[:" + FriendRelation + "]->(friend:User)")
.Return((u, friend) => new {UserId = u.As<User>().Id, FriendId = friend.As<User>().Id}).Results;
var relsInDb = results.Select(result => new RelationInDB(result.UserId, result.FriendId));