返回较大的JSON结果时出现以下异常:
字符串的长度超过在maxJsonLength属性上设置的值。
我试图捕获发生序列化但没有发生的异常。
try
{
return new JsonResult()
{
Data = LargeJsonData,
JsonRequestBehavior = JsonRequestBehavior.AllowGet
};
}
catch (Exception)
{
return "Error";
}
我不想调整属性。我只想捕获异常并进行适当处理。
我发现以下似乎重复的问题,但是可接受的答案修改了maxJsonLength属性。
如何使用JSON JavaScriptSerializer捕获序列化或反序列化过程中的错误
谢谢,史蒂夫
在Json结果上调用ExecuteContext方法时,将抛出此错误。您可以通过为JsonResult定义自己的替代并在此处捕获它来解决此问题,例如
public class CustomJsonResult : JsonResult
{
private const string _dateFormat = "yyyy-MM-dd HH:mm:ss";
public override void ExecuteResult(ControllerContext context)
{
try
{
base.ExecuteResult(context);
}
catch(Exception ex)
{
//Handle it
}
}
然后返回此实例而不是JsonResult。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句