2012-03-07 7 views
1

私の問題は、Webサービスからデータをダウンロードするときに1250レコードと言われていますが、30秒後にすべてが動作するはずですが、1300レコードを取得したい場合は、無限に(タイムアウトで10分後に終了します)。私はSQLクエリをテストし、クエリ自体が高速に実行されます(デバッグによってwcfサービスでもテストされます)が、データ転送が行われるとすべてが遅くなります。私は、このレコードを取得するためにウェブの設定で変更する必要がありますまたは多分私は私は知らない、IISで何かを変更すべきかを知らない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 configがあります。ページに

_ __ _ __ _ __ _ ___ SOLUTION:http://ardalis.com/fixing-maxitemsinobjectgraph-quota-error-in-wcf-service

敬具 マルセル

+0

クライアントアプリケーションと同じようにwcfサービス設定の最大設定が同じであることを確認しましたか? – evasilchenko

+0

はい同じように見えます – MCus

+0

すべての最大サイズを2147483647に設定してみてください。クライアントとサービスの両方にreaderQuotasを含めてみてください。サービスを再起動し、アプリケーションを再試行してください。それが動作すれば、それは設定の問題です。 – evasilchenko

答えて

1

あなたの設定ファイル順に高い最大値を必要と大きなデータセットを処理します。その後、maxItemsInObjectGraphの問題もありましたが、これも増加させる必要がありました。問題は、 "maxItemsInObjectGraphが大きすぎるということですが、サイズを大きくした後は65536しかありません"と言ったところで、クライアントとサービスの値が同じであることを確認する必要がありました。実際、これはすべての構成設定に適用され、サービスとクライアントの値はバインディングが正しく機能するように一致する必要があります。

+1

ここに詳細を記入してください。誰かがこの質問を将来見つけた場合、受け入れられた答えでそれを見る方がより便利になります。 – cadrell0

+0

#cadrell0 - 完了:) – evasilchenko

関連する問題