mvc “使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值” 解决经历...

 mvc中 在做一个post提交需要从控制器返回一个字符串(字符串有点长)

 在用json("需返回的字符串");时 报 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值 错误

在网上找了很久解决方案都未成功 下班之后也不想解决这问题 忙其它去了  在坐车回家的路上突然灵光一闪 我只返回字符串为什么要序列化、反序列化呢 还浪费性能,为什么不能像webForm中Handler一样返回文本数据呢   

 第二天上班一试 我的猜想果然正确  下面给出部分关键代码

 

public void Compare()
{
        Response.ContentType = "text/plain";
        Response.Write(model.ToDiff());//model.ToDiff() 方法为返回的长字符串(新写法)
      //return Json(model.ToDiff()); //  原来的写法
}

 

 前台post提交方法

$.post("@Url.Action("Compare","Home")",{},function(data){
       alert(data);
});

 

有时问题 换一种解决思路 也许效果更好,当遇到解决不了的问题 时间允许的情况下可以先放一放  也许下来在不经意间就会想到解决方案

 

转载于:https://www.cnblogs.com/yujiajun/archive/2012/10/10/jsonMaxlength.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值