2017-01-12 52 views
0

是否可以爲MVC中的特定操作設置MaxJSONSerializer的長度。我通過ajax POST調用一個Action方法。並傳遞參數作爲對象本身,因此呼叫沒有完成它顯示將MaxJSONSerializer的長度設置爲MVC中的特定操作

JSON請求太大,無法反序列化。

。我知道我們可以在Web.config文件中更改屬性。我想知道是否有任何可能性爲特定行動設置它。 這是我使用的ajax函數。如果我發送更小的對象數組,它正在工作。這裏settingobj對象被具有較大尺寸:

$.ajax({ 
url: "Home/CreateNew", 
data:{ jobId: val, projectId: selectcaseid, userId: user.id(), objSetting: settingobj, custle: objcustle() }, 
type: "POST", 
success: function(result){ 
     $("#div1").html(result); 
     //Success function 
    }, 
error: function(result){ 
     //error function 
    } 
}); 
+0

請提供控制器的方法,其中異常arrise,JS看起來很好 –

回答

0
StreamReader reader = new StreamReader(Request.Params["custle"]); 
    string bodyText = reader.ReadToEnd(); 
    if (String.IsNullOrEmpty(bodyText)) 
    { 
     // no JSON data 
     return null; 
    } 

    JavaScriptSerializer serializer = new JavaScriptSerializer(); 
    serializer.MaxJsonLength = 2147483647; 
    object jsonData = serializer.DeserializeObject(bodyText); 
    return jsonData; 
相關問題