Neo4jClient - получение отношения из запроса Cypher

У меня проблемы с получением соответствующих отношений из запроса Cypher.

У меня есть этот простой пробный код:

var movie = client.Create(new Movie { Title = "The Matrix" });

client.Create(new Actor { Name = "Keanu Reeves" },
    new ActedIn(movie, new ActedInPayload { Role = "Neo" }));

client.Create(new Actor { Name = "Hugo Weaving" },
    new ActedIn(movie, new ActedInPayload { Role = "Agent Smith" }));

var actorsAndRoles = client
    .Cypher
    .Start(new { movie = movie })
    .Match("actor-[r:ACTED_IN]->movie")
    .Return((actor, r) => new
    {
        Actor = actor.As<Node<Actor>>()
        // ActedIn = r.As<?????>()
    })
    .Results;

Проблема в том, что я не могу понять, как разыграть r (с подходящими отношениями).

Пробовал разные типы ".As", но ни один не работает. Приведение к Relationship не работает, потому что мой класс отношений не имеет конструктора без параметров - но тогда базовый класс Relationship не имеет самого конструктора без параметров, так что не думайте, что это сработает. Приведение к RelationshipReference, с другой стороны, вызывает исключение. Отсутствие приведения (просто возвращение r) вызывает исключение «не поддерживается».

Есть некоторые связанные записи SO об этой проблеме, но предлагаемый код там больше не работает или устарел.

Как мне найти подходящие отношения?

Ответы на вопрос(1)

Ваш ответ на вопрос