我正在通过 jQuery 加载选项卡内容数据ajax
通过 web 方法发布方法,大约有 200-300 条记录。并在控制台中出现以下错误:
错误:Sys.Net.WebServiceFailedException:
Sys.Net.WebServiceFailedException:System.InvalidOperationException--
使用 JSON 进行序列化或反序列化期间出错
JavaScriptSerializer。字符串长度超过设定值
在 maxJsonLength 属性上。
改变长度maxJsonLength
像这样的 Web.config 属性没有帮助。
<configuration>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="2147483644" />
</webServices>
</scripting>
</system.web.extensions>
</configuration>
谁能帮我解决这个问题吗?
JavaScriptSerialzer 有一个名为 MaxJsonLength 的公共属性,根据
http://msdn.microsoft.com/en-us/library/system.web.configuration.scriptingjsonserializationsection.maxjsonlength.aspx http://msdn.microsoft.com/en-us/library/system.web.configuration.scriptingjsonserializationsection.maxjsonlength.aspx
现在,在反序列化 json 的地方,使用这个
JavaScriptSerializer serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue; //Or any size you want to use, basically int maxValue is 2GB, you shouldn't need this big json string to deserialize, else you are doing it wrong.
myObject obj = serializer.Deserialize<myObject>(yourJsonString);
这应该可以完美地工作,我最近通过 msdn 解决了这个问题,并解决了一个困扰我很长时间的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)