エラーが発生しました:「通信オブジェクト System.ServiceModel.Channels.ServiceChannel は、Faulted 状態のため、通信に使用できません。」
app.config が原因でエラーが発生しましたか?
何か考えはありますか?ありがとう
エラーが発生しました:「通信オブジェクト System.ServiceModel.Channels.ServiceChannel は、Faulted 状態のため、通信に使用できません。」
app.config が原因でエラーが発生しましたか?
何か考えはありますか?ありがとう
私はこのエラーを受け取っていましたが、最初のチャンスの例外がサーバーに表示されていませんでした. 大きなサイズと適切なタイムアウトを許可するために、構成ファイルで適切な設定をセットアップしていませんでした。
<netTcpBinding>
<binding name="NetTcpBinding_IExampleService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
</binding>
</netTcpBinding>
エラーメッセージがもっと具体的だったらよかったのに。
明らかに、私の 2 ギガバイトの制限は、あなたの状況では必ずしも適切ではありません。読者には、特定のユース ケースに適した値を選択することをお勧めします。
これは通常、サーバーまたはクライアントで未処理の例外が発生した場合に発生します。あなたが持っているそのクライアントはもう良くないので、新しいクライアントを作成する必要があります.
サーバー側でエラーが発生した場合は、フォールト例外を使用する必要があります (チャネルにフォールトは発生しません)。このイベントを購読して、いつ発生したかを正確に知ることもできます。
その理由は、サービスを使用して別のプログラムなどからデータを取得することです。たとえば、technicService バージョン 1.2 (web.config を参照) を使用し、たとえば、billingService バージョン 1.3 (web.config を参照) を使用している場合、課金サービスが 1.2 ではなく technicService 1.3 に対応している場合、このエラーが発生することもあります。