Windows Server 2008 R2上でASP.Netアプリケーションを実行しています。 .NET Framework 4.5がインストールされています。 .NET Framework v2.0からv4.0への移行時に、私はWCFからランダムな動作を経験し始めました。無効なJSONがWCFによってランダムに返される
私のWebサービスは、JSONを返します。 IISを再起動すると、サービスは完全に有効なJSONを約3〜5回返します。その後、JSONは無効になります。私は、Fiddlerを介してワイヤを介して何が来ているのか、クライアントアプリケーション(サービスを呼び出すAdobe AIRアプリケーション)とサーバー自体の両方で自分のログを調べました。
フィドラーは、生の応答が無効なJSONが含まれている実際にはないことを示しています。 JSONのレスポンスJSONがもう一度書き直されるようになり、何がそこにあるべきかを上書きして、プロセス中にマングルされたJSONを生成しているようです。 (だけJSONレスポンスの先頭に表示されます)「にResponseCodeは」突然、さらに上のJSONに再び表示方法
{"responseCode":0,"actionCode":"OK","cdn{"responseCode":0, "actionCode".....
注:
は、この連結の例を参照してください。 "cdn{"responseCode":0
はもちろん無効なJSONです。
私は、多くのパッチを試してみました。私は別の枠組みの下で、さまざまな組み合わせでからServiceModelReg.exe
とaspnet_regiis.exe
を実行しようとしました。同じ振る舞い。以前のコードをv2.0に戻して、アプリケーションプールをv2.0に戻すと、すべて正常に動作します。
私は、これはWCFで深いバグであると信じます。何か案は?この時点で私が持っている
唯一の頼みの綱は、WCFをリッピングし、必要であれば、私はすべてのコードにデバッグすることができServiceStackのようなものに切り替えることです。
は、バッファが送信/受信後にクリアされていないいくつかのバッファが再送され、バッファリング問題の一種、またはのように見えます。 –
私はこれに関する既存の問題について認識していません。しかし、あなたが復興コードを投稿できるかどうかを理解することは役に立ちます。 – Praburaj
あなたは失敗したリクエストを試してみましたか? JavaScriptSerializer()を使用してリターンオブジェクトを実行しようとしましたが、そこに不具合があるかどうかを確認しましたか?必要に応じて、フレームワークにデバッグすることができます(http://msdn.microsoft.com/en-us/library/cc667410.aspxを参照)。 – Pete