Я пытаюсь запросить количество узлов, связанных с конкретным, с помощью Neo4jClient в F#. Но продолжайте получать следующую ошибку:
System.MissingMethodException: метод не найден: 'System.Type Newtonsoft.Json.JsonContainerAttribute.get_NamingStrategyType ()'.
Я просто не могу найти ответ в документации к пакетам. Фильтрация с помощью лямбда-функции работает на этапе «выбор», но не на этапе «где».
[<CLIMutable>]
type User = { id : int; followers : int }
let tweetsCounted =
client.Cypher
.Match("(u:User)-[:POSTED]->(t:Tweet)")
.Where(fun u -> u.followers = 1000)
.Return(fun (u : Cypher.ICypherResultItem) (t : Cypher.ICypherResultItem) -> u.As<User>(), t.Count())
.Results
.Select(fun (x, y) -> x.id, y)
Я только что добавил несколько тестов F# к клиенту (github.com/Readify/Neo4jClient/pull/270), .Where работает так, как ожидалось, как и .Return - может быть, вы могли бы дать мне неудачный тест, чтобы я мог изучить больше?
Спасибо, что сначала передали такой параметр, как решил проблему, в то время как лямбда-функция вызвала указанную ошибку. `` .Where ("u.followers = {followers}") .WithParams ({followers = filterUser.followers}) `Я сбросил свое соединение, перезапустил FSI и не могу воспроизвести проблему. Я могу подтвердить, что приведенный выше сценарий работает, как ожидалось.

Просто на этот вопрос есть ответ.
Я добавил модульные тесты, чтобы проверить функциональность F# в отношении предложений WHERE и RETURN, и они проходят, как ожидалось (см. http://github.com/Readify/Neo4jClient/pull/270).
Ошибка, упомянутая @AnotherNewbie, также больше не воспроизводится в их среде.
Я не уверен, в чем проблема - вы говорите, что в приведенном выше коде есть ошибки? Если да, то почему это не ошибка? Под этапом
where- вы имеете в виду.Whereна клиенте или как-то иначе?