2009-11-10 23 views
7

私は(Windowsサービスでホストされて、いないIIS)WCFサービスを呼び出すようにしようとしていると、次のエラーを取得しています:WCFメッセージの最大サイズクォータ

The maximum message size quota for incoming messages has been exceeded for the remote channel. See the server logs for more details.

私はMaxReceivedMessageSizeとReaderQuotasを増やす試してみました運のない最大値まで

は、私はまた、ロギングをオンとなってきたmesssageサイズチェックして「送信されます。」間違いなく最大値に近いところはありません。私たちは、372KBのXMLに直列化されたオブジェクトを送信することを話しています。

つの質問:誰でもメッセージが参照しているものを「サーバログ」

  1. を知っていますか? ...私はEventViewerチェックしましたが、何もそこまで示さない

  2. 誰もが、他の構成設定(s)は、ここで適用される場合があります何を知っていますか?

答えて

5

あなたは、Shawn Wildermuthのブログ記事を読んで、Silverlightアプリケーションの大きなメッセージサイズに問題があったことを思い出しました。おそらく、これはあなたを助けるでしょう:

http://wildermuth.com/2009/09/10/Using_Large_Message_Requests_in_Silverlight_with_WCF

をショーンは言う:

The trick is to change the customBinding in the web.config to use larger defaults. I picked 2MB as it its a reasonable size. Of course setting them to 2GB like shown above will work but it does leave you more vulnerable to attacks. Pick a size that isn't larger than your largest request but isn't overly large. Its a guessing game. To set these, you need to add them to your web.config is to put them on the httpTransport node:

+0

ありがとう!この記事は本当に役に立ちました。 – manu08

1

私はサーバーログとは、これをオンにすると作成されるトレースファイルとログファイルを意味します。ここにはMSDN linkがあります。

私が書き込むアプリケーションでより高い値を必要とするプロパティは、maxReceivedMessageSize、maxStringContentLength、maxArrayLength、およびmaxBufferSizeです。 それらを増加し、何が起こるか見てみてください。 WCFは、例外を飲み込むことが好きであるとしてデバッグする痛みをすることができます。

1

<system.diagnostics> 
    <trace autoflush="true" /> 
    <sources> 
     <source name="System.ServiceModel" 

        switchValue="Critical, Error, Warning" 
       > 
     <listeners> 
      <add name="traceListener" 
         type="System.Diagnostics.XmlWriterTraceListener" 
         initializeData="F:\log-data\ServiceTrace.svclog" 
      /> 
     </listeners> 
     </source> 
    </sources> 

    </system.diagnostics> 
+1

私は自分のサービスアプリケーションにこの設定項目を追加し、ログファイルを取得しています。しかし、それは単に爆発するメッセージを送信することを示しています。それは、実際のエラーやその他のことについては何も表示しません。 – manu08

0

2つのことを次のように、アプリケーションの設定で、サーバーのログとパスを指定することができます。

  • サーバー側とクライアント側の設定を表示できますか(関連するセクション - エンドポイント、バインド設定のみ)

  • 両方の値を変更しましたか(クライアントとサーバー)?

あなたが影響を与えることができるサイズの設定の全体の茄多があります ....

関連する問題