【问题标题】:Can we set the jsonSerialization maxJsonLength value more than 2147483647?可以设置jsonSerialization maxJsonLength 值大于2147483647吗?
【发布时间】:2019-03-06 14:47:43
【问题描述】:

在 web.config 文件中我们设置了

<jsonSerialization maxJsonLength="2147483647">
</jsonSerialization>`

但是,我们收到的数据超出了上述限制。 有没有办法可以将它增加到超出这个限制?我知道如何避免这种情况(如分页)。

以下是我们用于序列化数据的代码:

jsonString = new JavaScriptSerializer().Serialize(object1);

是否有可以覆盖 maxJsonLength 的地方?

【问题讨论】:

  • 您收到了超过 2GB 的 JSON!!!!
  • 我可以建议压缩数据或更改文件格式吗?正如@phuzi 所说:这是一个巨大的 json 文件
  • 我认为我没有收到 2GB 的数据。在这种情况下,也许这个属性被其他东西覆盖了。
  • 以下是我用于序列化对象的代码 jsonString = new JavaScriptSerializer().Serialize(objec1);
  • maxJsonLength 最终变成了int-valued property of JavaScriptSerializer。现在,JavaScriptSerializer 没有直接从流中解析的方法!它只能解析一个字符串。而在 .Net 中,字符串的理论最大长度也是 2,147,483,647,请参阅What is the maximum possible length of a .NET string?。所以它不能更大。

标签: asp.net json.net javascriptserializer


【解决方案1】:

不,该值被解析为整数(int 32),最大值为2147483647

如您所见,设置高于此值的任何内容都会导致错误。

【讨论】:

    猜你喜欢
    • 2012-09-26
    • 2013-12-29
    • 2010-11-12
    • 1970-01-01
    相关资源
    最近更新 更多