Как безопасно прочитать результат из session.Run? - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь выполнить некоторые зашифрованные запросы к базе данных Neo4j, используя Neo4j.Driver 1.6.Я немного запутался в том, как сделать это безопасно, потому что, кажется, каждый раз, когда мы читаем что-то из записи результата, оно становится недоступным.

Например, я пытался выполнить такой запрос, чтобы получитьметки 2 узлов:

MATCH (s {key:"val"}) MATCH (d {key:"val"}) return labels(s) as stype, labels(d) as stype

Запрос работает нормально, теперь вот кусок моего кода:

var result = session.Run(cypher_query);                              
if (result.Count() > 0)
{
    var first = result.Single();
    source_label = (string) ((System.Collections.Generic.List<object>)first["stype"])[0];
    destination_label = (string)((System.Collections.Generic.List<object>)first["dtype"])[0];
}

Однако, кажется, что после вызова Count (), Single() метод вызывает исключение, и результат недоступен.

Не могли бы вы помочь мне понять, как это работает и как я должен это сделать?

Большое спасибо

Рэй

...