2009-09-04 8 views
0

以下のエラーが表示されています。$ .postメソッドを使用してコントローラでアクションを呼び出すと、長さを増やすためにどのような設定をするべきか教えてください。

System.InvalidOperationException:JSON JavaScriptSerializerを使用してシリアル化または直列化解除中にエラーが発生しました。文字列の長さがmaxJsonLengthプロパティで設定された値を超えています。 System.Web.Script.Serialization.JavaScriptSerializer.Serializeで System.Web.Script.Serialization.JavaScriptSerializer.Serializeで(オブジェクトobj、StringBuilderの出力、SerializationFormat serializationFormat) (オブジェクトobj、SerializationFormat serializationFormat) System.Web.ScriptでSystem.Web.MvcでSystem.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext、のActionResultのActionResult)で.Serialization.JavaScriptSerializer.Serialize(オブジェクトobj)System.Web.Mvc.JsonResult.ExecuteResult(ControllerContextコンテキスト)で .ControllerActionInvoker。 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, Func 1続き)で<> c__DisplayClass11.b__e()

System.Web.Mvc.ControllerActionInvokerました。 <> c__DisplayClass11 <> c__DisplayClass13.b__10()System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFiltersで System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext、文字列actionNameの)で(ControllerContext controllerContext、IList`1フィルタ、のActionResultのActionResult) でSystem.Web.Mvc.Controller.Execute(RequestContext requestContext)のSystem.Web.Mvc.Controller.ExecuteCore() System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) at System.Web.Mvc.ControlBase.System.Web.Mvc.IController.Execute(RequestContext requestContext) System.Web.Mvc.MvcHandler.ProcessRequestで(HttpContextBaseのHttpContext)System.Web.Mvc.MvcHandler.ProcessRequestで (のHttpContextのHttpContext)System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequestで (HttのpContextのHttpContext)System.Web.HttpApplication.ExecuteStep(IExecutionStepステップ、ブール& completedSynchronously)でSystem.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Executeで ()

は、事前にありがとう

答えて

2

あなたは無制限、以下の方法のためのweb.configファイルでそれを設定することができます。デフォルト値は4メガバイトの周りにある

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

msdn link

+0

それについては非常に良いブログ記事です。ユースケースに合った数字に設定する方がよいでしょう。無制限に設定すると、誰かがシステムを乱用する可能性があります。 –

関連する問題