玩F#Type提供商并且没有太远。我有以下json文件(称为PriceDemand.json):
[
{
"intervalDate": "2018-01-22T00:00:00+11:00",
"regionId": "NSW1",
"rrp": 114.17,
"totalDemand": 12338.04
},
{
"intervalDate": "2018-01-22T00:00:00+11:00",
"regionId": "NSW1",
"rrp": 113.41,
"totalDemand": 12334.98
}
]
我已编写以下代码来处理它:
open FSharp.Data
open System
type PriceDemand = JsonProvider<"PriceDemand.json">
let data = PriceDemand.Parse("PriceDemand.json")
[<EntryPoint>]
let main argv =
data |> Seq.iter (fun v -> printf "%s" v.RegionId)
Console.ReadLine() |> ignore
0 // return an integer exit code
我有PriceDemand
类型的智能感知,但是引发了以下TypeInitializationExceptionexception
:
从字符0开始的无效JSON,
snippet =
---- PriceDemand
----- json =
------ PriceDemand.json
任何想法我做错了什么?
答案 0 :(得分:4)
您正在呼叫.Parse
,您应该拨打.Load
。字符串"PriceDemand.json"
正在被解析为JSON,这是无效的。如果您将呼叫更改为let data = PriceDemand.Load("PriceDemand.json")
,则应该可以正常工作。