异常信息如下:

使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。
这个异常是在执行MVC中的JsonResult的时抛出的,根据异常的Message得知是序列化的字符串超出了maxJsonLength的限制。并得知这个属性是由JavaScriptSerializer提供的,因为MVC内置的JsonResult是用JavaScriptSerializer进行序列化的。
单纯在web.config中加入下列配置节无效:
<system.web.extensions><scripting><webServices><jsonSerialization maxJsonLength="20971520"/></webServices></scripting>
</system.web.extensions>

还必须重写JsonResult这个类:

ConfigurableJsonResult public class ConfigurableJsonResult : JsonResult{public override void ExecuteResult(ControllerContext context){if (context == null){throw new ArgumentNullException("context");}if (JsonRequestBehavior == JsonRequestBehavior.DenyGet &&String.Equals(context.HttpContext.Request.HttpMethod, "GET", StringComparison.OrdinalIgnoreCase)){throw new InvalidOperationException("This request has been blocked because sensitive information could be disclosed to third party web sites when this is used in a GET request. To allow GET requests, set JsonRequestBehavior to AllowGet.");}HttpResponseBase response = context.HttpContext.Response;if (!String.IsNullOrEmpty(ContentType)){response.ContentType = ContentType;}else{response.ContentType = "application/json";}if (ContentEncoding != null){response.ContentEncoding = ContentEncoding;}if (Data != null){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;}response.Write(serializer.Serialize(Data));}}}

测试后可以正常使用。

参考:

http://www.cnblogs.com/shenba/archive/2012/02/03/2337050.html

http://weblogs.asp.net/rashid/archive/2009/03/23/submitting-my-first-bug-after-asp-net-mvc-1-0-rtm-release.aspx

转载于:https://www.cnblogs.com/sherlock99/p/3659759.html

MVC中JSON字符长度超出限制的异常处理相关推荐

  1. 解决JSON字符长度超出限制

    环境asp.net  4.0  ,AJAX 一般处理程序 碰到JSON字符长度超出限制,抛出异常,参考了网上资料和网友博客 web.config添加以下内容 <system.web.extens ...

  2. SMARTFORMS 输出动态文本(字符长度超出255)

    场景:当字符长度超出Smartforms中的最大可输出长度255时,将字符串转换到内表打印显示. 首先将字符串转换为ITF Text. DATA: l_string TYPE string,lt_st ...

  3. word文档中文字字符长度不一,如何快速调整使上下行左右对齐

    word文档中文字字符长度不一,如何快速调整使上下行左右对齐 目录 word文档中文字字符长度不一,如何快速调整使上下行左右对齐 1.例如需要将下图文字竖向对齐.(将上一行两个字和下一行四个字上下对齐 ...

  4. SCPPO(五):解决MVC中Json传输数据量问题

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [引言] 之前自己对系统进行了熟悉,现在自己开始做新的模块!上先来这是个查询的功能:自己就捋思路 ...

  5. linux文件每行长度,linux – 根据第一列/行中的字符长度对文件进行排序

    我需要根据第一列中的字符数对文件进行排序. 我不知道如何解决这个问题.我正在使用Linux,所以sed / awk / sort都可用. .abs is bla bla 12 .abc is bla ...

  6. js中的字符长度问题

    今天遇到一个小问题,使用UTF-8这种Unicode编码存储格式时,用js中的字符串的length属性获取输入框中输入的字符长度时,输入中文也是按一个字符算,刚才查了下资料,原来在JS中字符串的长度不 ...

  7. mysql中length字符长度函数使用方法

    在mysql中length是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符了,与char_length是有一点区别,本文章重点介绍第一个函数. mysql里面的length函数是一个用来 ...

  8. 微信小程序字符长度超出变成神略号显示

    .item-content-top {width: 90%;white-space: nowrap;overflow: hidden;text-overflow: ellipsis; } ps:宽度需 ...

  9. JavaScript表单验证,输入中文时字符长度为2

    获取输入框中的字符长度进行表单验证,当输入英文时字符长度就是1,当输入中文时字符长度为2. 字符数为4~16位, 上图: 一个中文抵两英文. 上代码 1 btn.addEventListener('c ...

最新文章

  1. linux 国内 NTP时间服务器地址
  2. Exception in thread AWT-EventQueue-0 java.lang.IllegalThreadStateException
  3. c语言程序设计2014春第一套作业,C语言程序设计2014春第一套作业
  4. ZWrite 和ZTest
  5. Ajax文件上传(formdata)
  6. sql Server配置管理器
  7. 工业嵌入式移动软件设计
  8. word分栏第一栏没满内容跑到下一栏
  9. category ue 协议_LTE中UE能力(UE Capability)的梳理和解析
  10. SketchUp模型组件【iMod · 精选242 —— 现代客厅SU模型】
  11. 如何获取中国电信、网通、铁通的最新ip地址段
  12. Shader中的 mul()函数解释
  13. 监控易火星版纳管IPv6:IP地址管理V2.0的进化之路
  14. VM虚拟机无法安装WIN7系统,出现“start booting from cd”
  15. python进行excel随机抽样
  16. 8款最佳的开源在线学习CMS系统[转]
  17. 企业信使运营管理平台登陆入口 发送方法
  18. [经验教程]浙江卫视手机高清在线直播入口及浙江卫视回放在线观看高清直播教程
  19. 腾讯云【OCR-行驶证驾驶证识别】PHP - POST请求 Api踩的坑 Demo
  20. Allegro利用Skill实现BGA封装的自动扇出功能

热门文章

  1. c语言小项目-使用mysql数据库的图书管理系统
  2. hadoop之文件管理基本操作
  3. 刷题总结——xor(ssoj)
  4. ThinkPHP 3.2.3 关联模型的使用
  5. 使用PDFBox解析PDF文件
  6. java 文件的编码 问题
  7. [转]js实现简单的双向数据绑定
  8. 苏教版国标本小学语文第一册汉字笔画
  9. Jqgried树形列表
  10. 网页Request Headers请求头和Response Headers响应头