愚かなエラーの種類が、私は、サーバー側サービス(WCF二重)で、クライアントを呼び出すために望んでいたとき、これが起こっ:WCFコールバックのタイムアウトとVisual Studioの致命的な故障
メッセージが内に転送することができませんでした00:01:00の割り当てられたwcfコールバックタイムアウト、信頼できるチャネルの転送ウィンドウに利用可能なスペースがありませんでした
また何かmysterious happened too
。ログインメソッドで、ユーザーとパスワードが間違っている場合にサービスを呼び出したときに、送信者コールバックを見つけて、送信者にGetError
メソッドを呼び出して、「ユーザーが間違っています」などの論理エラーを表示します。これはうまくいきますが、ユーザーとパスワードが正しい場合にアクセスできれば、エラーが発生します(他のすべてのクライアント側のメソッドと同じ - これらのメソッドでは単純な文字列より多くのデータを送信します。
編集2:ほとんどのコールバックメソッドでは、データコンテキスト(LINQ to SQL)データクラス(リストまたは単一行)のようなデータを送信しました。これは私の問題かどうかです!
(しかし、これはまた、コールバックメソッドにおける送信データ構造体で、WCF二重を使用して、私の最初の時間ではありませんが、私は驚異的だ。)また、そのエラーの後、私は、
スクリーンサービスhttp://server:15450/service.svc致命的な障害からの要求を処理することができませんでし
編集3: サービスの設定:
<system.serviceModel>
<services>
<service name="ContactServer.Business.ContactService"
behaviorConfiguration="ServiceBehavior">
<endpoint address=""
binding="wsDualHttpBinding"
contract="ContactServer.Business.IContactService">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"
name="MexBinding"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
とクライアントコンフィグ
<system.serviceModel>
<bindings>
<wsDualHttpBinding>
<binding name="WSDualHttpBinding_ContactService" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text"
textEncoding="utf-8" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:10:00" />
<security mode="Message">
<message clientCredentialType="Windows" negotiateServiceCredential="true"
algorithmSuite="Default" />
</security>
</binding>
</wsDualHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:1408/ContactService.svc"
binding="wsDualHttpBinding" bindingConfiguration="WSDualHttpBinding_ContactService"
contract="ServiceReference.ContactService" name="WSDualHttpBinding_ContactService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
</client>
</system.serviceModel>
詳細情報:私は、.NET 3.5とVisual Studio 2010を使用するには、クライアント側の立ち上がりタイムアウト後、私はまだ同じエラー、with 00:01:00 Time
を得ました。なぜこれが起こったのですか?
@Rev:このストーリーは素晴らしいですが、サービスやコールバックの動作、サービスとコールバックの契約など、サービスに関する詳細情報が必要です。クライアントアプリケーションのタイプについても。 Btw。 DataContextをWCF経由で送信しないでください。動作しません。 –
多分、WPFまたはSilverlightで有名な問題があります。ここでConcurrencyMode = Reentrantを指定する必要があります。 – vorrtex
@ラディスラフ:私はサービスまたはコールバック全体のデータコンテキストを送信せず、1つまたは2つのデータクラス(単一の行またはリスト)のみを送信します。 –
Rev