使用JSON JavaScriptSerializer进行序列化或反序列化

本文关键字:序列化 反序列化 JSON JavaScriptSerializer 使用 | 更新日期: 2023-09-27 17:58:01

我为web服务创建了一个json方法,其中方法传递了json对象,在这个对象中有一个列表(包含pdf、图像的列表)。当调用此方法并传递长度超过1Mb的pdf时,服务器无法处理此请求,并在下面粘贴消息时出错:

使用JSON JavaScriptSerializer进行序列化或反序列化时出错。字符串的长度超过了在maxJsonLength属性上设置的值。

为了解决这个问题,我尝试了一种解决方案,如下所示。我在web配置中添加了以下代码。

但是使用这个我并没有得到成功的结果。请帮我解决这个问题。

  <httpRuntime targetFramework="4.5" executionTimeout="2400" maxRequestLength="20000"/>            
<system.web.extensions>
<scripting>
  <webServices>
    <jsonSerialization maxJsonLength="2147483647"/>
  </webServices>
</scripting>

使用JSON JavaScriptSerializer进行序列化或反序列化

您可以试试这个。。

public ActionResult MyControllerAction()
{
  var jsonResult = Json(veryLargeCollection, JsonRequestBehavior.AllowGet);
  jsonResult.MaxJsonLength = int.MaxValue;
  return jsonResult;
}