我的问题是,当从网络服务下载数据时,比如1250条记录,一切正常(30秒内完成),但当我想获得1300条记录时,我的方法无限期地工作(10分钟后结束)超时)。我测试了sql查询并且查询本身快速执行(也通过调试在wcf服务中测试),但是当有数据传输时,一切都变慢了。 这是我的网络配置绑定:
<basicHttpBinding>
<binding name="soapUniglobShopService" closeTimeout="00:10:00"
openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="4000000" maxBufferPoolSize="524288" maxReceivedMessageSize="4000000"
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>
我不知道我应该在web配置中更改什么来获取此记录,或者我应该在IIS中更改某些内容,我不知道。
_ __ _ __ _ __ _ ___ 在页面上找到解决方案:http://ardalis.com/fixing-maxitemsinobjectgraph-quota-error-in-wcf-service
祝你好运 马塞尔
答案 0 :(得分:1)
您的配置文件需要更高的最大值才能处理更大的数据集。之后你仍然遇到了maxItemsInObjectGraph的问题,它也必须增加。你遇到的问题是,在你增加它的大小之后,“maxItemsInObjectGraph太大了,它只能是65536”,这意味着你需要确保客户端和服务值是相同的。实际上,这适用于所有配置设置,服务和客户端值必须匹配才能使绑定正常工作。