asp.net – 超过了JavaScriptSerializer.MaxJsonLength.处理这个的最佳做法是什么?

前端之家收集整理的这篇文章主要介绍了asp.net – 超过了JavaScriptSerializer.MaxJsonLength.处理这个的最佳做法是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用jQuery的$.ajax()函数发送给客户端的大量数据.我在ASP.NET Web服务中调用返回JSON数据的方法.一切都适用于大多数搜索,但是当我有一个大的数据集返回时,我遇到了一个JavaScriptSerializer MaxJsonLength属性的问题.处理这个的最佳做法是什么?我不想只是任意设置一个最大长度.如果返回的数据大于当前的最大值,还是应该重新写入并向客户端发送数据卡,我可以在Web服务中设置MaxJsonLength吗?

以下是Web服务的相关代码段:

Dictionary<string,object> jsonValuePairs = new Dictionary<string,object>();
//add some data to the dictionary...
return System.Web.Script.Serialization.JavaScriptSerializer.Serialize(jsonValuePairs);

解决方法

从客户端脚本调用的web方法设置最大长度的唯一方法是通过web.config文件(如下).
设置此问题是什么?
我每次都会通过多个xhr调用来处理数据的部分数据.
<system.web.extensions>
  <scripting>
      <webServices>
        <jsonSerialization maxJsonLength="500000">
        </jsonSerialization>
      </webServices>
  </scripting>
</system.web.extensions>

更新:默认大小为2097152,相当于4 MB的Unicode字符串数据.你真的要把这么多的数据发回给客户吗?如果这样,你需要看看应用程序设计,因为用户体验会慢而繁琐.

猜你在找的asp.Net相关文章