Я пытаюсь десериализации некоторые очень простой JSON в F # с Newtonsoft.Json 5.0.4:Как я могу десериализовать Json с F #?
#if INTERACTIVE
#r "C:/Users/OCatenacci/fshacks/CreateWeeklySWEEventsEmail/packages/Newtonsoft.Json.5.0.4/lib/net40/Newtonsoft.Json.dll"
#endif
open System
open Newtonsoft.Json
type meta() = class
member val count = 0 with get, set
end
let testjson = """{
"meta": {
"count": 15
}
}"""
let o = JsonConvert.DeserializeObject<meta>(testjson)
мета всегда получает 0 в счете. Кстати, я был первоначально определение мета, как это:
type meta = {
count: int
}
И я изменил с помощью автоматического свойства, потому что я думал, что Newtonsoft.Json может быть не в состоянии правильно построить объект.
Я был бы удивлен, если моя версия F #/Windows имеет значение в этом случае, но только для полноты: я пытаюсь это с помощью F # 3.0 Repl (11.0.60315.1), и я запускаю на Win7 x64 (SP1).
Считаете ли вы использование поставщика типа F # JSON? http://fsharp.github.io/FSharp.Data/library/JsonProvider.html – JonnyBoats
@ JonnyBoats, что было бы хорошо, если бы поставщики типов поддерживались моно. Я хочу, чтобы это могло работать с моно. –