Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
public static async Task<List<Person>> GetAncestors(Person vertex, IGremlinQuerySour
{
var ancestors = await querySource.V<Person>(vertex.Id)
.Out<ChildOf>()
.Cast<Person>()
.ToArrayAsync();
if (ancestors.Count() == 0)
{
return ancestors.ToList();
}
var ancestorsReturn = new List<Person>(ancestors);
foreach (var ancestor in ancestors)
{
ancestorsReturn.AddRange(await GetAncestors(ancestor, querySource));
}
return ancestorsReturn;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment