我正在尝试使用JsonProvider,但是当我调用它的函数时出现以下错误:
System.TypeInitializationException was unhandled
Message: An unhandled exception of type 'System.TypeInitializationException' occurred in PortableLibrary1.dll
Additional information: The type initializer for '<StartupCode$PortableLibrary1>.$PortableLibrary1' threw an exception.
我有一个基本的控制台应用程序,如下所示:
module Pinit =
open FSharp.Data
type JsonT = JsonProvider<"""..\myFile.json""">
let doc = JsonT.Load("""..\nyFile.json""")
let result = doc.GeneratedAt
[<EntryPoint>]
let main argv =
printfn "%A" Pinit.doc.GeneratedAt
0
如果在ConsoleApplication中运行,则一切正常。 如果创建如下的F#可移植类库:
module Pinit =
open FSharp.Data
type JsonT = JsonProvider<"""..\myFile.json""">
let doc = JsonT.Load("""..\nyFile.json""")
let result = doc.GeneratedAt
创建另一个控制台应用程序并引用该可移植类库,并按以下方式调用代码:
open PortableLibrary1
[<EntryPoint>]
let main argv =
printfn "%A" Pinit.result
0
当我运行程序时,它会生成上述异常:
我怀疑这是由于 FSharp.Core 的版本问题,想知道是否有哪里出了问题,或者是否有解决方法?
版本信息:
-- ConsoleApplication --
FSharp.Core = 4.3.1.0
-- PortableClassLibrary --
FSharp.Core = 3.3.1.0
FSharp.Data = NuGet Version: 2.0.0
Pinit.result
是什么? - Søren Debois