1
我看了关于这一主题的许多问题,并创建以下几乎动态查询:使用Neo4j的客户建立一个动态查询
var resQuery = WebApiConfig.GraphClient.Cypher
.Match("(movie:Movie {title:{title}})")
.WithParam("title", title)
.Return(() => new {
movie = Return.As<string>("movie.title")
}).Results;
不幸的是,这不是动态的,因为我声明了在返回匿名电影财产类型。
在所有的例子,我发现的唯一的选择是作为一个对象相匹配的节点属性, 退回的节点:movie = Return.As<string>("movie.title")
我希望return语句给我回的键值对列表所有的节点属性(它可以像JSON等任何表示形式),因为 我的节点是通用的,而不是每次都从一个特定的对象类型。
是可能的吗?
谢谢! 如果我想添加更多的返回值,该怎么办? 例如 'cast = Return.As>(“collect([person.name,head(split(lower(type(r)),'_')),r.roles])”) –
@DorCohen do你的意思是在'.Return((x,y,z)=> new {X = x.As <>(),Y ='etc? –
但是这会破坏动态,是否有可能返回多个节点?例如:'.Return(()=> Return.As(“movie,collect([person.name,head(split(lower(type(r)),'_')),r.roles])” ));' –