0

我有一个 gremlin 服务器,其中数据由一些 c# 代码推送(如下所示)它基本上迭代一个类的属性并将这些属性添加到图中。

我在 javascript 中使用 gremlin 与这个 gremlin 服务器通信。当我执行 gV().ToList 时,我将所有顶点作为带有 id 和标签的 json 对象数组。但是属性未定义:

  Vertex { id: 50543, label: 'asdad', properties: undefined },
  Vertex { id: 51569, label: 'b', properties: undefined },
  Vertex { id: 50547, label: 'c', properties: undefined },
  Vertex { id: 50551, label: 'd', properties: undefined },
  Vertex { id: 50555, label: 'e', properties: undefined },
  Vertex { id: 50559, label: 'f', properties: undefined },
  Vertex { id: 50563, label: 'g', properties: undefined },
  Vertex { id: 50567, label: 'h', properties: undefined },
  ... 151 more items ]

但是,当我执行 gV().properties() 时,我看到属性列为顶点属性:

 VertexProperty {
    id: 52349,
    label: 'E',
    value: 'P',
    key: 'E',
    properties: undefined },
  VertexProperty {
    id: 52351,
    label: 'id',
    value: '187516',
    key: 'id',
    properties: undefined },
  VertexProperty {
    id: 52350,
    label: 'Name',
    value: 'b',
    key: 'Name',
    properties: undefined },
  VertexProperty {
    id: 52353,
    label: 'E',
    value: 'P',
    key: 'E',
    properties: undefined },

以上显示已添加属性,但我在第一次调用时需要它们。

 g.AddV(v1.Name).Next();


               PropertyInfo[] properties = v1.GetType().GetProperties();
               foreach (PropertyInfo property in properties)
               {

                   var v = g.V().HasLabel(v1.Name).Property(property.Name, property.GetValue(v1)).Next();
               }

预期的属性应该出现,但它们是未定义的。

4

1 回答 1

1

我认为这与这里提出的问题相同。

你可以试试:

g.V().valueMap(true).toList()
于 2019-06-13T10:18:47.653 回答