asp mvc 2返回json结果

时间:2011-02-24 11:52:51

标签: jquery asp.net-mvc-2

尝试将字典作为jsonresult返回,字典中的元素数量> 3.6K; 我的代码:

$('#go').click(function () {
      $("#content").empty().html('<img src="Content/loading.gif" style="top:100px;left:100px;"/>');
      $.ajax({
          type: 'POST',
          url: '<%= Url.Action("LoadContent","Home") %>',
          async: true,
          data: {
              block: $('input[name=block]:checked').attr('value'),
              type: $('input[name=type]:checked').attr('value'),
              begin: $('#begindate').attr('value') + " " + $('#begintime').attr('value'),
              end: $('#enddate').attr('value') + " " + $('#endtime').attr('value')
          },
          dataType: 'json',
          success: function (response) {
              alert(response);
              $.plot($("#content"), repsonse);
          }
      });
  });

和服务器端:

public JsonResult LoadContent(string block,string type,string begin,string end) {
        List<FinalResult> result = Core.LetThePartyBegin(DateTime.Parse(begin), DateTime.Parse(end), block);
        Dictionary<DateTime, double> returnValue = new Dictionary<DateTime, double>();
        result.ForEach(p =>
            p.Result.ForEach(q => returnValue.Add(p.Datetime + new TimeSpan(0, 0, q.Number), q.W)));
        return Json(returnValue);
    }

所以,Json(returnValue)包含3600个值,我收到错误500内部服务器错误; 如果我设置Json(returnValue.Take(100))它的工作原理。 是否对jsonresult的大小有任何限制?

2 个答案:

答案 0 :(得分:1)

ajax响应的最大大小。 (我不确定,但我认为这是4M)

也许您的预期回复可能会超过此最大值。这也可以解释当您返回小于最大大小的子集时它的工作原理。

检查详细的错误消息

答案 1 :(得分:0)

其中一个日期未解析。你确定它们都有效吗?