2011-02-24 6 views
0

jsonresultとして辞書を返そうとすると、辞書> 3.6kの要素数になります。 私のコード:asp mvc 2 return json result

$('#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のchractersを返すことができます、それはエラーを見つけるのを助けるかもしれません。 –

+0

how ??その単純な辞書、何を表示するかわからない – eba

+0

エラーの詳細は何ですか? – roryf

答えて

1

ajaxレスポンスの最大サイズがあります。 (私は確信していませんが、私はそれが4Mだと思っています)

多分あなたの意図した反応がこの最大値よりも大きいかもしれません。これはまた、最大サイズよりも小さいサブセットを返すときになぜ機能するのかを説明します。

は、詳細なエラーメッセージの日付の

0

一つがパースされていないか確認してください。彼らはすべてが有効であると確信していますか?