11

ページ上のフォームが少し大きすぎます。毎月の測定データを収集します。サンプルを見てください:

{
"Year":2013,
"Month":3,
"Records":[
    {"Id":0,"Date":"3/1/2013","RiverSection":5,"UserNumber":56},
    {"Id":0,"Date":"3/1/2013","RiverSection":7,"UserNumber":200},
    {"Id":0,"Date":"3/1/2013","RiverSection":8,"UserNumber":556},
    {"Id":0,"Date":"3/2/2013","RiverSection":5,"UserNumber":56},
    {"Id":0,"Date":"3/2/2013","RiverSection":7,"UserNumber":200},
    ...
    ...
    {"Id":0,"Date":"3/31/2013","RiverSection":7,"UserNumber":200}
}

だから私はビッグデータをAPIControllerに投稿しています。

Visual Studio デバッガー サーバーを使用して、ローカル コンピューターで正常に動作します。しかし、コードをサーバー (IIS 6) にアップロードした後。を与えます500 Internal Server Error

サンプルデータを投稿して、文字列化されたjsonの長さを確認してみました。

1 つのサンプル データ セットでは、json の長さは 5743 で、「成功」しました。しかし、json のサイズが 17345 に達すると、500 Internal Server Error.

そこでjsonの上限を上げてみました。この投稿に基づいて

Web.Config

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

しかし、それは機能していません。

次を使用して、別の答えがあります。

var serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue;

しかし、このコードをどこに配置すればよいでしょうか? でGlobal.asax

IIS 6 を使用していることに注意してください。問題はありますか? データが WebApi アクションにヒットできるように、json サイズの制限を正しく増やすにはどうすればよいですか?

ご協力ありがとうございます。

4

1 に答える 1