Как получить логическое значение из Neo4j - PullRequest
0 голосов
/ 17 июня 2020

Я выполняю запрос и хочу получить простое значение типа bool. Проблема заключается в преобразовании результата в логическое значение. Я знаю, что result [0] содержит ключ, который является последней частью запроса, и массив значений, где находится bool. Теперь все, что мне нужно, - это вывести из ценностей этот бул.

public async Task<List<IRecord>> GetRecordsAsync(string query)
{
    IDriver _driver = GraphDatabase.Driver("bolt://localhost:7687", AuthTokens.Basic("neo4j", "project"));
    IAsyncSession _session = _driver.AsyncSession(o => o.WithDatabase("neo4j"));
    List<IRecord> records = new List<IRecord>();
    try
    {

        IResultCursor cursor = await _session.RunAsync(query);

        while (await cursor.FetchAsync())
        {
            records.Add(cursor.Current);
        }

        await cursor.ConsumeAsync();
    }
    finally
    {
        await _session.CloseAsync();
    }
    return records;
}
public void GetBool()
{

    string query = "MATCH(p: User { userName: 'something'}), (b: User { userName: 'somethingElse'}) RETURN EXISTS((p)-[:Follows]->(b) )";
    var result = GetRecordsAsync(query).Result;

    var only = result[0];
    bool finalResult=...
}

1 Ответ

0 голосов
/ 18 июня 2020

Собственно, разобрался. Мне нужно было вставить только одну строку:

bool value = only.Values ​​["EXISTS ((p) - [: Follows] -> (b))"]. As ();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...