6

Windows フォーム クライアント アプリケーションから WCF サービスにアクセスしようとしています。サーバー上の私のバインディング構成は次のとおりです。

 <bindings>
      <customBinding>
        <binding name="Wrabind" closeTimeout="00:05:00" openTimeout="00:05:00"
            sendTimeout="00:25:00">
          <textMessageEncoding />
          <security authenticationMode="SecureConversation" includeTimestamp="true"
              messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10">
            <localClientSettings maxClockSkew="00:30:00" />
            <localServiceSettings maxClockSkew="00:30:00" />
            <secureConversationBootstrap messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10">
              <localClientSettings maxClockSkew="00:30:00" />
              <localServiceSettings maxClockSkew="00:30:00" />
            </secureConversationBootstrap>
          </security>
          <httpTransport maxBufferPoolSize="20000000" maxReceivedMessageSize="20000000"
              allowCookies="true" maxBufferSize="20000000" />
        </binding>
      </customBinding>
    </bindings>

ご覧のとおり、既にmaxReceivedMessageSizeを 20000000 に設定していますが、まだ"The maximum message size quota for incoming messages (65536) has been exceeded."例外が表示されています。何か不足していますか?

4

3 に答える 3

2

この場合、WCF サーバー側の設定は関係ありません。クライアント側のバインディング構成はあなたの敵です...

于 2013-08-25T15:34:59.547 に答える
1

ここから:-

「binding.MaxBufferSize = 2147483647」も追加する必要がある場合があります。サービス参照を更新または再構成すると、「ServiceReferences.ClientConfig」が自動更新されます。したがって、WCF サービス ライブラリの "App.config" を使用してサービス レベルで適切なバインド構成を提供した場合、その構成は使用中の Silverlight クライアントに自動継承されます。ただし、コードでバインディングを動的に作成している場合、これらすべてが有効になるわけではありません。

于 2013-08-25T15:34:50.933 に答える