Да, у меня действительно простая проблема, но я не могу придумать действительно простой ответ, чтобы решить ее. Этот код должен возвращать одного человека с набором языков и стран.
return client.Cypher
.Match("(person:Person)")
.Where((Person person) => person.Email == username)
.OptionalMatch("(person)-[:SPEAKS]-(language:Language)")
.OptionalMatch("(person)-[:CURRENT_LOCATION]-(country:Country)"
.Return((person, language, country) => new ProfileObject
{
Person = person.As<Person>(),
Language = language.CollectAs<Language>(),
Country = country.CollectAs<Country>()
}).Results.ToList();
Мне это кажется правильным, но это не так, при сборке я получаю эту ошибку, которую я понимаю, но не могу решить.
Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<Neo4jClient.Node<Graph.Country>>' to 'Graph.Country'. An explicit conversion exists (are you missing a cast?)
Языковой класс выглядит так
public class Language
{
public string Name { get; set; }
}
И класс ProfileObject выглядит так:
public class ProfileObject
{
public Person Person { get; set; }
public Language Language { get; set; }
public Country Country { get; set; }
}
Я действительно застрял, пожалуйста, помогите.