我正在尝试使用 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)
meta 在计数中总是得到 0。顺便说一句,我最初是这样定义元的:
type meta = {
count: int
}
我改为使用 Automatic 属性,因为我认为 Newtonsoft.Json 可能无法正确构造对象。
如果我的 F#/Windows 版本在这种情况下有所不同,但只是为了完整起见,我会感到惊讶:我正在使用 F# 3.0 Repl (11.0.60315.1) 进行尝试,并且我在 Win7 x64 (SP1) 上运行) 盒子。