是否可以为MVC中的特定操作设置MaxJSONSerializer长度。我通过ajax POST调用Action方法。并将参数作为对象本身传递,因此调用未显示
JSON请求太大而无法反序列化。
。我知道我们可以在Web.config文件中更改属性。我想知道是否有可能为特定的Action设置它。 这是我正在使用的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 :(得分: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;