簡體   English   中英

設置輪詢雙工WCF服務中的回調超時

[英]Set the Timeout of a Callback in a Polling Duplex WCF Service

我有一個帶有CallbackContract的WCF服務。 該服務使用“ pollingDuplexHttpBinding”公開給Silverlight客戶端。當Silverlight客戶端為“ dead”且該服務調用回調操作時,一分鍾后將收到超時異常。 我該如何設置不同的超時時間?

謝謝,埃拉德

MSDN中有一篇不錯的文章,與配置PollingDuplexHttpBinding有關

//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.config的示例,該示例配置PollingDuplexHttpBinding

希望這會有所幫助。

因此,似乎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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM