0

我已经在我的开发机器上为 tinkerpop/gremlin-server 设置了一个 docker 容器。

我有一个使用 Gremlin.Net 3.4.1 版的 .NET Core 应用程序

我使用 IRemlinClient 连接到本地主机泊坞窗,并在传递以下查询以添加顶点时:

g.addV("Root").property(id,"56b7ddc6-7629-42d4-b748-bfbce0992f13")

然后我得到错误:

ScriptEvaluationError: For input string: "56b7ddc6-7629-42d4-b748-bfbce0992f13"

当我使用 gremlin 控制台运行查询时,会添加顶点:

gremlin> g.addV("Root").property(id,"56b7ddc6-7629-42d4-b748-bfbce0992f13")
==>v[56b7ddc6-7629-42d4-b748-bfbce0992f13]

在我的应用程序中通过 IRemlinClient 运行时,如何创建一个带有字符串作为 Id 的新顶点?

4

1 回答 1

2

由于您使用的是默认 Gremlin Server Docker 容器,因此您正在为托管的 TinkerGraph获取此配置:

gremlin.graph=org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph
gremlin.tinkergraph.vertexIdManager=LONG

IdManager设置为,因此LONG它只接受可以强制为 a 的输入值long。您应该将该设置更改为UUID可能给定您正在发送的字符串或可能ANY您可以在此处阅读有关这些选项的更多信息。

作为旁注,我同意错误消息没有帮助。请注意,它已针对 3.4.3/3.3.8 的下一个版本进行了改进

于 2019-07-11T10:57:43.363 回答