jquery – 在MVC 4中增加json响应maxJsonLength

前端之家收集整理的这篇文章主要介绍了jquery – 在MVC 4中增加json响应maxJsonLength前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在加载大型 JSON响应表单服务器时,我在剃刀视图引擎MVC4(.net 4.5)应用程序中遇到以下错误

“使用JSON JavaScriptSerializer序列化或反序列化时出错.字符串的长度超过了@Html.Raw(Json.Encode(jsondata)”上maxJsonLength属性设置的值“

我已经尝试通过在我的web.config中设置MaxJsonLength属性

configuration> 
   <system.web.extensions>
       <scripting>
           <webServices>
               <jsonSerialization maxJsonLength="2147483644"/>
           </webServices>
       </scripting>
   </system.web.extensions>
</configuration>

在发送JSON响应时也尝试在服务器端执行以下操作.

return new JsonResult()
    {
        Data = data,ContentType = contentType,ContentEncoding = contentEncoding,JsonRequestBehavior = behavior,MaxJsonLength = Int32.MaxValue
    };

也试过解决列出的野兔:http://brianreiter.org/2011/01/03/custom-jsonresult-class-for-asp-net-mvc-to-avoid-maxjsonlength-exceeded-exception/.但没有为我工作:(

有人可以建议我如何避免这个错误或者如何增加Jason的响应最大长度?

解决方法

不知何故,我通过使用下面的代码来摆脱这个错误.
@{
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue;
}
<script type="text/javascript">
var entries = @Html.Raw(serializer.Serialize(Model.FeedEntries));    
</script>

至少对我而言,这在服务器端不起作用.

猜你在找的jQuery相关文章