2011-02-24 78 views
0

試圖將字典返回爲jsonresult,字典中的元素個數> 3.6k; 我的代碼:asp mvc 2返回json結果

$('#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的大小是否有任何約束?

+0

你能提供返回的json的start20和end 20個字符,它可能有助於定位錯誤。 – 2011-02-24 11:57:01

+0

怎麼樣?它的簡單字典,不知道要顯示什麼 – eba 2011-02-24 12:00:13

+0

錯誤的細節是什麼? – roryf 2011-02-24 12:38:53

回答

1

ajax響應的最大尺寸。 (我不確定,但我認爲它是4M)

也許您的預期響應可能大於此最大值。這也可以解釋爲什麼當你返回一個小於最大尺寸的子集時它會工作。

查看詳細錯誤信息

0

其中一個日期不解析。你確定他們都是有效的嗎?