https://www.cnblogs.com/ellafive/p/13704301.html

1、序列化:

以下代码在对象过大时会报错:进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。

//jsonObj比较大的时候会报错
var serializer = new JavaScriptSerializer();
return serializer.Serialize(jsonObj);
使用Newtonsoft.Json也有此问题,解决方案是设置MaxJsonLength:

var serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue; //设置为int的最大值
return serializer.Serialize(jsonObj);
2、ajax访问WebService:

以jQuery方式访问WebService,如果POST的数据过大,也会收到HTTP500错误,解决方法是在Web.config中设置一下maxJsonLength:

<system.web.extensions>

//访问调用方法

JavaScriptSerializer serializer = new JavaScriptSerializer();

             ScriptingJsonSerializationSection section = ConfigurationManager.GetSection("system.web.extensions/scripting/webServices/jsonSerialization") as ScriptingJsonSerializationSection;

             if (section != null)
{
serializer.MaxJsonLength = section.MaxJsonLength;
serializer.RecursionLimit = section.RecursionLimit;
}

问题解决了,但是小编还是觉得其中有疑问,就查询了更多帖子,发现一种更加完美的方式:

复制代码
public ActionResult GetLargeJsonResult()
{
return new ContentResult
{
Content = new JavaScriptSerializer { MaxJsonLength = Int32.MaxValue }.Serialize(listResult),
ContentType = "application/json"
};
}
复制代码
另外,发现一个讲解更加透彻的帖子,附上地址:http://www.cnblogs.com/artech/archive/2012/08/15/action-result-03.html

 
分类: JSON

json序列化数据超出最大值(maxJsonLength)的更多相关文章

  1. Python常用标准库(pickle序列化和JSON序列化)

    常用的标准库 序列化模块 import pickle 序列化和反序列化 把不能直接存储的数据变得可存储,这个过程叫做序列化.把文件中的数据拿出来,回复称原来的数据类型,这个过程叫做反序列化. 在文件中 ...

  2. 使用JSON JavaScriptSerializer进行反序列化和序列化时报错,字符的长度超出了MaxJsonLength的长度

    文章参考:https://www.cnblogs.com/wangfuyou/p/6046307.html 1.解决办法是在web.config增加如下节点到<configuration> ...

  3. asp.net mvc 4 json大数据异常 提示JSON字符长度超出限制的异常

    今天客户突然过来找我说在后台添加了一篇超长的文章后,所有后台的文章都显示不出来了.后台的前端显示是用easyui的,返回的数据全是用json.根据客户的描述进行了同样的操作后,在firebug下发现a ...

  4. day04 装饰器 迭代器&生成器 Json & pickle 数据序列化 内置函数

    回顾下上次的内容 转码过程: 先decode  为 Unicode(万国码 ) 然后encode 成需要的格式     3.0 默认是Unicode  不是UTF-8 所以不需要指定  如果非要转为U ...

  5. Python-Day4 Python基础进阶之生成器/迭代器/装饰器/Json & pickle 数据序列化

    一.生成器 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面 ...

  6. 自定义JsonResult处理JSON序列化DateTime类型数据(Ext4.2+ASP.NET MVC 4)

    最近项目中前台页面使用Extjs4.2 ,在后台ASP.NET MVC4返回的DateTime类型的数据错返回的DateTime类型的JsonResult的结果中的值是“\/Date(13784461 ...

  7. python基础6之迭代器&生成器、json&pickle数据序列化

    内容概要: 一.生成器 二.迭代器 三.json&pickle数据序列化 一.生成器generator 在学习生成器之前我们先了解下列表生成式,现在生产一个这样的列表[0,2,4,6,8,10 ...

  8. json&pickle数据序列化模块

    用于序列化的模块 json,通用的序列化方式,序列化成为str类型,支持所有语言识别,序列化的数据具有局限性. pickle,python的所有数据类型都可以被序列化,序列化为bites格式,只适用于 ...

  9. json序列化datetime类型数据

    错误描述: import jsonimport datetime a = datetime.datetime.now()print(a) b = json.dumps(a)print(b) 如上代码, ...

  10. json序列化时间日期数据注意

    通过json序列化时间日期格式数据的时候需要注意,不能直接序列化,我写了一个类,可以借用 import json from datetime import datetime,date a = {'na ...

随机推荐

  1. nerdctl 常用操作

    登陆镜像仓库 # 注意地址要放到后面,否则会无法正常解析账户参数 nerdctl login --username test2023 --password T090b1J registry.test. ...

  2. SpringBoot模板一

    SpringBoot模板一 SpringBoot员工管理系统 用到的技术: Version1 JDBC MySQL SSM thymeleaf lombok shiro WebSocket Swagg ...

  3. 11-3 MySQL 中对于 PowerDesigner 的使用

    11-3 MySQL 中对于 PowerDesigner 的使用 @ 目录 11-3 MySQL 中对于 PowerDesigner 的使用 1. PowerDesigner的使用 1.1 开始界面 ...

  4. [CSP-S 2022] 假期计划

    link \(1-A-B-C-D-1\) 非常对称,我们断开来,分成 \(1-A-B\) 和 \(C-D-1\) 两部分,不难发现这两块是完全一致的. 首先对于每个景点 \(x\) 求出距离它不过 K ...

  5. 在C#中使用 System.Threading.Timer 实现定时任务

    在C#中使用 System.Threading.Timer 实现定时任务 (qq.com) 前言 在编写应用程序过程中,高效的任务调度都是必不可少的,无论是在实现后台服务.自动化任务或者定期数据处理. ...

  6. json\jquery入门

    一)什么是JSON (1)JSON(Java Script Object Notation(记号,标记))是一种轻量级的数据交换语言, 以文本字符串为基础,且易于让人阅读 注意:XML就是一个重量级的 ...

  7. linux centos配置环境变量

    前言 在centos上配置环境变量,有两种情况:分别是系统级别的,和用户级别的. 用户级别的 只对当前用户生效,切换至其他linux用户则无效. 系统级别的则对所有用户都生效(建议). 用户级别 .b ...

  8. Codeforces Round #705 (Div. 2) AB题解

    A. Anti-knapsack 思路:首先比k大的都可以加进来.其次对于小于k的,检验当前集合里面有没有和他相加等于k的,没有的话就可以加进集合.这一步可以覆盖多个数相加的情况. view code ...

  9. PNG 文件简单解析 和 libpng的简单实用

    PNG 文件格式 89 50 4E 47 0D 0A 1A 0A 表示PNG的数据格式 00 00 00 0D IHDR 文件头数据的长度 49 48 44 52 IHDR 表示 00 00 00 0 ...

  10. 3.1k star!推荐一款开源基于AI实现的浏览器自动化插件工具 !

    大家好!今天,我要给大家介绍一款超实用的开源工具--Chrome MCP Server!这款工具不仅能大幅提升我们的工作效率,还能让AI助手(如Claude)直接操控浏览器,实现自动化操作.内容分析等 ...