Neo4jClient - Pobieranie relacji z zapytania Cypher

Mam problem z wyszukiwaniem dopasowanych relacji z zapytania Cypher.

Mam ten prosty kod próbny:

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;

Problem polega na tym, że nie mogę znaleźć sposobu na rzucenie r (z dopasowaną relacją).

Próbowałem różnych rzutów typu „.As”, ale żaden nie działa. Rzucanie na relację nie działa, ponieważ moja klasa relacji nie ma konstruktora bez parametrów - ale wtedy klasa bazowa relacji nie ma samego konstruktora bez parametrów, więc nie myśl, że to zadziała. Z drugiej strony rzucanie na RelationshipReference powoduje wyjątek. Nie rzucanie w ogóle (po prostu powrót r) powoduje wyjątek „nieobsługiwany”.

Istnieją pewne powiązane wpisy SO dotyczące tego problemu, ale sugerowany tam kod albo nie działa, albo jest przestarzały.

Jak odzyskać dopasowaną relację?

questionAnswers(1)

yourAnswerToTheQuestion