我有大量的数据,可能会有所不同。当数据被序列化并从C#传递给JS时,我遇到了MaxJsonLength的错误。
我找到了修复程序here,它运行正常。但我很好奇将这个数字设置得太高是不是很糟糕? 显然有一个原因,它默认为102400(100k)。
我是否有可能在JavaScriptSerializer字符串长度中找出我的数据的粗略大小,所以我可以将配置文件中的数字降下来?
由于
答案 0 :(得分:0)
当我设置此属性时,我们的JSON是unicode(每个字符两个字节),因此我们将以下内容用于11 MB的JSON文件:
1024 * 1024 * 22
这给了我们23068672。
所以,我的例子如下 - 如果你计算你的JSON的实际长度(11MB),如果unicode(22MB)加倍,那么就训练字节(1024 * 1024)。
要获取JSON的长度,只需计算JSON字符串中的字节:
var count = Encoding.UTF8.GetBytes(json).Length;