我正在使用图形数据库构建社交查询系统。我正在使用 janusgraph数据库来实现这一目标。我使用.net作为服务器端语言,我找到了一个为gremlin服务器提供客户端的库( Gremlin.net v3.3.1 )。在gremlin中,存在关键字valueMap以获取所选顶点的属性的键值。在gremlin.Net库中存在一个名为 ValueMap< {Tkey,Tvalue> 的类似函数,我无法通过 Tkey 和 Tvalue找到它的意思。我有任何关于gremlin.net库的文档或示例,他们的文档非常弱。
我把{放在ValueMap中,因为当我把<>它将被stackoverflow省略。
提前致谢。
答案 0 :(得分:1)
只是为了扩展布兰登在评论中所说的话:
ValueMap
是一个返回属性键的映射(在.NET中为Dictionary
)的步骤,其值为:
gremlin> g.V().valueMap()
==>[name:[marko],age:[29]]
==>[name:[vadas],age:[27]]
==>[name:[lop],lang:[java]]
==>[name:[josh],age:[32]]
==>[name:[ripple],lang:[java]]
==>[name:[peter],age:[35]]
(摘自the respective section of the TinkerPop docs,其中包含更多信息和示例。)
现在您需要告诉Gremlin.Net Dictionary键的类型及其值,以便它可以反序列化图形系统接收的结果(在本例中为JanusGraph)。对于上面的示例,键始终是字符串,但值是整数或字符串的集合。所以上面的查询在Gremlin.Net中会是这样的:
g.V().ValueMap<string, IList<object>>().ToList()
(ToList()
是实际迭代遍历的必要条件,这是Gremlin控制台为您自动执行的操作。)
另请注意JanusGraph currently only supports TinkerPop 3.2.z,因此推荐的Gremlin.Net版本为3.2.7。