1

CallbackContract を使用した WCF サービスがあります。このサービスは、「pollingDuplexHttpBinding」を使用して Silverlight クライアントに公開されます。Silverlight クライアントが「停止」し、サービスがコールバック操作を呼び出すと、1 分後にタイムアウト例外が発生します。このタイムアウトを別の値に設定するにはどうすればよいですか?

ありがとう、エラド

4

2 に答える 2

0

したがって、PollingDuplexHttpBinding の「SendTimeout」属性が機能しているようです。

<extensions>
  <bindingExtensions>
    <add name="pollingDuplexHttpBinding" type="System.ServiceModel.Configuration.PollingDuplexHttpBindingCollectionElement, System.ServiceModel.PollingDuplex, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
  </bindingExtensions>
</extensions>

<bindings>

  <pollingDuplexHttpBinding>
    <binding name="myPollingDuplex" sendTimeout="00:00:05"/>
  </pollingDuplexHttpBinding>

</bindings>


<services>
  <service name="Kodak.Pgy.Server.Event.WCFService.EventService" behaviorConfiguration="EventBehavior">

    <!--For duplex communication with the service from silverlight client-->
    <endpoint address="/for-silverlight" binding="pollingDuplexHttpBinding" bindingConfiguration="myPollingDuplex" contract="IEventService"/>

  </service>

</services>
于 2012-02-13T13:06:45.240 に答える
0

PollingDuplexHttpBindingの構成に関連する MSDN の素晴らしい記事があります。

//Inactivity timeout
PollingDuplexHttpBinding binding = new PollingDuplexHttpBinding();    
//Get default inactivity timeout
TimeSpan defaultInactivityTimeOut = binding.InactivityTimeout;
//Returns default timeout in minutes: 10
string txtDefaultInactivityTimeOut = defaultInactivityTimeOut.Minutes.ToString();    
//Set new inactivity timeout
TimeSpan newInactivityTimeOut = new TimeSpan(0, 5, 0);
binding.InactivityTimeout = newInactivityTimeOut;

更新: 「方法: Silverlight クライアント用の二重サービスを構築する」の「 PollingDuplexHttpBinding を使用するには」の段落の下に、構成に基づいた例があります。 うまくいけば、これは役に立ちます。web.configPollingDuplexHttpBinding

于 2012-02-12T21:11:14.827 に答える