Я думаю, что вы столкнулись с одной из оставшихся несоответствий между Gremlin, созданным в рамках полной виртуальной машины Gremlin (т. Е. Java), и Gremlin в качестве варианта языка Gremlin - в вашем случае, Gremlin.NET.Я не думаю, что tree()
имеет полную поддержку в любом GLV.Интересно, что вы показываете, что получаете обратно Vertex
, как я и ожидал, в той или иной форме ошибки сериализации, поскольку я не думал, что Gremlin.NET даже знал, как десериализовать g: Tree .Даже если бы это было так, у нас нет объекта Tree
в .NET, чтобы десериализовать его.
Кажется, я вспоминаю, что проблемы с tree()
и сериализацией зашли еще глубже и укоренились в некоторых проблемах в библиотеке Джексона, но возможно, что все они решены сейчас в более поздние времена.
Обратите внимание, что с subgraph()
-шагом вы столкнетесь с аналогичными ограничениями, поскольку на стороне GLV нет объекта Graph
для десериализации.Интересно, если бы в этих случаях мы не могли просто по умолчанию вернуть сам необработанный JSON.Разбирать вручную было бы неинтересно, но в некоторых случаях это может быть лучше, чем ничего.
Я создал эту проблему для постоянного отслеживания TINKERPOP-2063 .