0

以下に示すこのエラーが発生しています $.post メソッドを使用してコントローラーでアクションを呼び出すと、最大長を超えるエラーだと思います長さを増やすにはどの設定をすればよいか教えてください

System.InvalidOperationException: JSON JavaScriptSerializer を使用したシリアル化または逆シリアル化中にエラーが発生しました。文字列の長さが maxJsonLength プロパティで設定された値を超えています。System.Web.Script.Serialization.JavaScriptSerializer.Serialize (オブジェクト obj、StringBuilder 出力、SerializationFormat serializationFormat) で System.Web.Script.Serialization.JavaScriptSerializer.Serialize (オブジェクト obj、SerializationFormat serializationFormat) で System.Web.Script.Serialization. JavaScriptSerializer.Serialize(Object obj) の System.Web.Mvc.JsonResult.ExecuteResult(ControllerContext context) の System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass11 。なれ()

System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter (IResultFilter フィルター、ResultExecutingContext preContext、Func で1 continuation) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass11.<>c__DisplayClass13.<InvokeActionResultWithFilters>b__10() at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func1 継続) System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass11.<>c__DisplayClass13.b__10() で System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 フィルター, ActionResult actionResult) で System.Web. Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) の System.Web.Mvc.Controller.ExecuteCore() の System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) の System.Web.Mvc.ControllerBase.System.Web System.Web.Mvc.MvcHandler.ProcessRequest(HttpContextBase httpContext) の .Mvc.IController.Execute(RequestContext requestContext) System.Web.Mvc.MvcHandler.ProcessRequest(HttpContext httpContext) の System.Web.Mvc.MvcHandler.System.Web .IHttpHandler.System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() での ProcessRequest(HttpContext httpContext) System.Web.HttpApplication.ExecuteStep(IExecutionStep ステップ、ブール値および completedSynchronously)

前もって感謝します

4

2 に答える 2

2

次の方法で、web.configで無制限に設定できます。

<Scripting>
  <WebServices>
    <JsonSerialization MaxJsonLength="0" />
  </WebServices>
</Scripting>

デフォルト値は約4MBです。

msdnリンク

于 2009-09-04T10:13:29.330 に答える
0

ここにそれについての非常に良いブログ記事があります

http://brianreiter.org/2011/01/03/custom-jsonresult-class-for-asp-net-mvc-to-avoid-maxjsonlength-exceeded-exception/

于 2013-01-09T11:37:29.840 に答える