2016-04-14 27 views
0

C#ASP.NETで処理されるOData v4 ActionにJSONのチャンクをアップロードしています。ある時点で、入力を適切に解析する代わりに、ODataActionParameters paramは単にnullになり、サーバーはNULLポインタ例外をスローします。ODataActionParametersのサイズにはどのような制限がありますか?

アップロードするデータは、に分割することができますが、それは難しいですし、そうするには扱いにくいですし、b)私がそうすると少しデータが失われる可能性があります。 (私はイベントをシミュレータにアップロードしていますが、入力はセグメント化されていることが多いため、セグメント化が保証されていません - グループ化が1つしかないかもしれません)

ODataActionParametersバイトの負荷の下で壊れますか?私は何かひどく非科学的な「壁でそれを投げ、何を見るか」という瞬間をしていますが、限界が何であるか教えてくれれば、私の人生ははるかに楽になります。

+0

'ODataActionParameters'は' Dictionary 'のエイリアスです。調整可能である。例外が発生する場所を示すスタックトレースを提供できますか? – lencharest

答えて

0

この制限は、ODataActionParameters自体ではなく、system.web httpRuntime構成にあったことが判明しました。この制限は、いくつかのエンドポイントで拡張されました。解決策はweb.configを変更してより大きなmaxRequestLengthを許可することでした:

<configuration> 
    <system.web> 
    <httpRuntime targetFramework="4.6" maxRequestLength="204800" /> 
    ....and other settings... 
    </system.web> 
</configuration> 

デフォルトのmaxRequestLengthは4MBです。私は、アプリケーションの周りの様々なODataビットが200MBのmaxReceivedMessageSizeを設定するので、ここで200MBに設定しました。 (特定のリクエストの本当の制限は、そのリクエストとhttpRuntime設定のOData設定のの下位のものです。

関連する問題