WCF服务消息大小错误

时间:2014-03-27 05:43:12

标签: wcf web service reference

我有两个独立的模块(基于Web的GUI和基于WCF的服务器),我正在使用WCF服务引用来访问从GUI到Server的某些方法。当GUI从服务器请求数据并向GUI发送大量数据时,会出现问题;抛出最大消息大小错误异常! 我在Web.config文件中的相应section标签中增加了消息大小,它暂时有效,但是当我的情况下总是增长的数据达到允许的最大大小时,错误再次发生!我知道瓶颈在GUI端! 我该如何解决这个问题,有没有办法让GUI服务引用来处理不断增长的数据? 这是我的GUI web.config文件:

<pre>
</system.webServer>
<system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="BasicHttpBinding_IServerHelper" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="16777216" maxBufferPoolSize="524288" maxReceivedMessageSize="16777216" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" >
                <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
                <security mode="None">
                    <transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
                    <message clientCredentialType="UserName" algorithmSuite="Default"/>
                </security>
            </binding>
        </basicHttpBinding>
    </bindings>
    <client>
        <endpoint address="http://172.16.16.7:123456/ServerServices" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IServerHelper" contract="ServiceReference1.IServerHelper" name="BasicHttpBinding_IServerHelper"/>
    </client>
</system.serviceModel>
</pre>

感谢帮助我...

1 个答案:

答案 0 :(得分:0)

您可以将这些值设置为int.MaxValue。如果仍然不足以返回您的回复消息,则应尝试拆分消息。毕竟,这将是2GB的消息。也许SOAP不是运输这种野兽的最佳方式。