MVC中JSON字符长度超出限制
类别:编程学习 浏览量:2922
时间:2015-9-22 MVC中JSON字符长度超出限制
MVC中JSON字符长度超出限制ASP.NET MVC中通过JsonResult返回JSON字符串时,当JSON字符串长度过长时,会报如下错误
异常详细信息: System.InvalidOperationException: 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。
由于原来MVC框架内置的JsonResult代码中,在使用JavaScriptSerializer时,都是采用的默认值,没有从maxJsonLength读取值,即忽略了这个配置,所以通过修改 web.config ,设置 jsonSerialization节点maxJsonLength属性值是无效的
解决方法
1、新建一个控制器扩展类
namespace WEBMVC.Helpers { public static class ControllerExtensions { public static int MaxJsonLength{get;set;} public static ControllerExtensions() { MaxJsonLength = 2147483644; } public static System.Web.Mvc.JsonResult LargeJson(this System.Web.Mvc.Controller controlador, object data) { return new System.Web.Mvc.JsonResult() { Data = data, MaxJsonLength = MaxJsonLength, }; } public static System.Web.Mvc.JsonResult LargeJson(this System.Web.Mvc.Controller controlador, object data, System.Web.Mvc.JsonRequestBehavior behavior) { return new System.Web.Mvc.JsonResult() { Data = data, JsonRequestBehavior = behavior, MaxJsonLength = MaxJsonLength }; } //TODO: You can add more overloads, the controller class has 6 overloads } }
2、在需要返回大数据的控制器里面如下调用
using WEBMVC.Helpers;
namespace WEBMVC.Controllers
{
public class VentasController : Controller
{
ControllerExtensions.MaxJsonLength = 1073741824;//1GB,如果需要单独设置长度,如果不需要,则不设置该值
public ActionResult VentasList (){
//Todo: All the action code
return ControllerExtensions.LargeJson(myData);
}
}
}
标签:MVC
您可能感兴趣
- mvc编译时,让View中的错误提示
- mvc中@helper的用法
- php框架制作方法(PHP从零开始打造自己的MVC框架之路由类实现方法分析)
- php框架初始化教程学习(PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解)
- mvc razor 输出html
- MVC中JSON字符长度超出限制
- MVC升级后报"当前上下文中不存在ViewBag"错的解决方法
- MVC使用HandleErrorAttribute自定义异常
- mysql实现mvc(mysql的MVCC多版本并发控制的实现)
- MVC中JavaScriptResult
- mvc中validateinput属性失效
- python如何编写一个用户登录系统(Python实现的登录验证系统完整案例基于搭建的MVC框架)
- MVC中的ActionResult
- MVC中modelstate的使用
- MVC中使用jQuery加载分部视图(PartialView)
- windows server 2008r2怎么安装(Windows Server2008 R2 MVC 环境安装配置教程)
- 《精英律师》剧照首曝光,实力演员飙戏,演绎律政职场百态(精英律师剧照首曝光)
- 靳东领衔打造高精职场 新丽出品《精英律师》曝定妆照(靳东领衔打造高精职场)
- 靳东新剧《精英律师》定档,众星云集,这剧可追(靳东新剧精英律师定档)
- 精英律师 廖佳敏封印恋情曝光,顾婕马失前蹄 你个老不死的(廖佳敏封印恋情曝光)
- 以家人之名广受好评,剧情生动引起观众共鸣,演员张新成圈粉无数(以家人之名广受好评)
- 三兄妹感情再遇波折,人设接连崩塌 《以家人之名》剧情猜不透(三兄妹感情再遇波折)
热门推荐
- dedecms添加广告栏(织梦DedeCMS v5.7 完美实现导航条下拉菜单的方法)
- showModalDialog在谷歌浏览器下获取不到返回值
- 如何使用docker启动tomcat(简述Docker安装Tomcat镜像并部署web项目)
- SQL Server 批量导入数据的方法
- node中如何用import(分析node事件循环和消息队列)
- xampp安装后还用配置吗(如何用xampp建立数据库)
- python端口扫描脚本测试(Python实现的IP端口扫描工具类示例)
- iis上搭建php环境(vultr服务器windows server 2012 r2搭建IIS8+PHP+MYSQL+phpMyAdmin运行环境图文教程)
- dede菜单激活状态(DEDE采集大师官方留后门的删除办法)
- php使用yield处理并发(Yii框架中使用PHPExcel的方法分析)