gpt4 book ai didi

arrays - JSON.NET 无法处理简单的数组反序列化?

转载 作者:行者123 更新时间:2023-12-04 15:34:39 26 4
gpt4 key购买 nike

我创建了一个带有一个字段的简单类。 class Test{int value;}
如果我使用“保留引用”功能并将其设置为“所有”(即对象和数组),那么当我简单地序列化测试对象数组时,它会被序列化为具有特殊“$values”成员的 JSON 对象与数组值,以及用于保留数组引用的预期“$id”属性。这么多没问题,但整个过程又一次打破了反序列化。

单步查看源代码,我发现仅仅因为对“IsReadOnlyOrFixedSize”的测试为真,它将标志“createdFromNonDefaultConstructor”设置为真,这甚至没有任何意义,因为虽然它是固定大小的数组,它是从默认构造函数创建的,除非它将任何固定大小的数组构造函数视为非默认构造函数。底线是它应该能够处理如此基本的事情,但它抛出了这个错误:“Cannot preserve reference to array or readonly list, or list created from a non-default constructor”。

如何反序列化基本数组,同时保留 JSON.NET 中的所有引用而不会出错?

最佳答案

遇到同样的问题,我用了 List<T>而不是 T[]要解决这个问题。

关于arrays - JSON.NET 无法处理简单的数组反序列化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20323397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com