我有一个 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();
}
预期的属性应该出现,但它们是未定义的。