type T =
{ F1: IList<int>
F2: IList<int> }
let t =
{ F1 = [||]
F2 = [||] }
let p = FsPickler()
let ms = new MemoryStream()
p.Serialize(ms, t :> obj)
ms.Position <- 0L
let p1: obj = p.Deserialize ms
result:
System.ArgumentException: An item with the same key has already been added.
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at FsPickler.ArrayPickler.reader@67-13.Invoke(Reader r)
at FsPickler.Pickler`1.UntypedRead(Reader r, Boolean managed)
at FsPickler.Reader.Read[T](Pickler`1 pickler)
at recordDeserializer(Pickler[] , Reader )
at FsPickler.Pickler`1.UntypedRead(Reader r, Boolean managed)
at FsPickler.Reader.Read[T](Pickler`1 pickler)
at FsPickler.FsPickler.Deserialize[T](Stream stream, FSharpOption`1 streamingContext, FSharpOption`1 encoding, FSharpOption`1 leaveOpen)
at <StartupCode$FSI_0158>.$FSI_0158.main@() in FsPicklerTest.fsx:line 76
result: