2012-10-05 45 views
5

web.configにmaxJsonLengthを設定すると、.netサイトで500 - Internal Serverエラーページが表示され続けます。ASP.net Web.ConfigでjsonSerialization maxJsonLengthを設定すると、エラーが発生します。

vb.net JavaScriptSerializerでMaxJsonLength = Int32.MaxValueを使用していても、私がまだ大量の辞書のInvalidOperationExceptionを取得しているため、.configを変更しようとしています。 4GBのMaxJsonLength @ Int32.MaxValueでは、デフォルトの4mbの制限も可能です。

何かを意味する場合は、私はtoolkitscriptmanagerを使用しています。

<system.web.extensions> 
<scripting> 
    <webServices> 
    <jsonSerialization maxJsonLength="2147483647"/> 
    </webServices> 
</scripting> 

これは

<sectionGroup name="system.web.extensions" type="System.Web.Extensions"> 
    <sectionGroup name="scripting" type="System.Web.Extensions"> 
    <sectionGroup name="webServices" type="System.Web.Extensions"> 
     <section name="jsonSerialization" type="System.Web.Extensions"/> 
    </sectionGroup> 
    </sectionGroup> 
</sectionGroup> 

(実際に、それはまた、上記のコードなしで500エラーになります)助けていない、これは例外InvalidOperationExceptionを支援すべきである聞いたが、それはしませんでした。私はそれを取り出し、まだ500エラー。

<add key="aspnet:MaxJsonDeserializerMembers" value="2147483647" /> 

事前に感謝します。

編集

同じ問題が、彼のソリューションは、私のために動作しません。彼が追加した最後のコードも500エラーになります。 Problem with <system.web.extensions> config group when upgrading to .NET 4.0

+0

これを調べると、クロムの火花が出ますが、500の応答でエラーメッセージが表示されますか?あなたはエラーが応答のサイズによって引き起こされたと思いますが、多くの理由で500エラーが発生します –

+0

ありがとう、返信してください。レスポンスヘッダーには何も記載されておらず、レスポンスは典型的な.net 500エラーページに過ぎません。jsonSerialization maxJsonLength行を挿入すると、エラーが表示されます。私がそれを取り除くと、必要なスーパーJSONを手に入れることができない場合を除いて、すべて問題はありません。 –

+0

奇妙なことに、をweb.configのすべての時間に自分のコードに使用しているのと同じように、に問題はありませんか?確かに –

答えて

5

私の問題は、コードをweb.configの先頭に置くことでした。何らかの理由で、それを最後に置くことができました。

熟練していないので、私はそれがなぜ機能するのか分かりません。

最後の2つのコードセクションがなくても動作しました。

私はグラックスと合意した
2

、私は

<system.web.extensions> 
    <scripting> 
     <webServices> 
      <jsonSerialization maxJsonLength="2147483647"/> 
     </webServices> 
    </scripting> 
</system.web.extensions>` 
+0

を確認してください.ajax()コールの同期:true(あなたの要求を終わらせる呼び出しが重複する) –

+0

あなたは 'configuration'nodeの終わりを意味していますか? –

1
<system.web.extensions> 
    <scripting> 
     <webServices> 
     <!--<jsonSerialization maxJsonLength="50000000"> 
     </jsonSerialization>--> 
     <jsonSerialization maxJsonLength="500000000"> 
      <!--50000000--> 
     </jsonSerialization> 
     </webServices> 
    </scripting> 
    </system.web.extensions> 

上記の設定は、私のために働いたweb.configファイルの末尾にブロックの下にこれを置きます。さらに、私はWebサイトのターゲットフレームワークを.Net 4.0に設定しなければなりませんでした。ターゲットの枠組みを右あなたのウェブサイトの名前をクリックすると詳細設定を選択し、フレームワーク、後藤IISを変更し、アプリケーションプールを選択するには2.0

を.NETに設定した場合は、このWeb構成の設定は、私に 500エラーを与えていました。ここでは、ドロップダウンをクリックして.Net Frameworkのバージョンを変更することができます。

また、私はこの設定をウェブ設定の最下部に設定しました。幸運のためだけに:

これは役立ちます。

関連する問題