WCF délai d'inactivité

J'ai créé un simple service WCF, est hébergé sur windows service, en suivant de près l'exemple sur MSDN ici: http://msdn.microsoft.com/en-us/library/ff649818.aspx

Si je fais un 2ème appel à mon service > 10 minutes après mon premier appel, je vais obtenir un délai d'inactivité d'erreur. Je comprends que c'est le réglage par défaut de la WCF client.

Cependant, quand je change de mon application.config de

 <reliableSession ordered="true" inactivityTimeout="00:10:00"
                   enabled="false" />

à

 <reliableSession ordered="true" inactivityTimeout="infinite"
                    enabled="true" />

J'ai cette erreur lorsque je tente de faire un appel:

Le message avec l'Action
'http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence" ne peut pas être
traitées au niveau du récepteur, en raison d'un ContractFilter inadéquation à l'
EndpointDispatcher. Cela peut être en raison d'une incompatibilité de contrat
(incompatibles Actions entre l'émetteur et le récepteur) ou une liaison/sécurité
l'inadéquation entre l'émetteur et le récepteur. Vérifier que l'expéditeur et le
récepteur ont le même contrat et la même liaison (y compris
exigences en matière de sécurité, par exemple, de Message, de Transport, Aucun).

C'est comment mon WCF fichier de config comme sur le service windows.

  <system.serviceModel>
<services>
  <service name="Asis.IBSS.Milestone.WCFService.ServiceImplementation.VideoService">
    <endpoint address="" binding="netTcpBinding" bindingConfiguration="" contract="Asis.IBSS.Milestone.WCFService.ServiceContract.IVideoService">
      <identity>
        <dns value="localhost"/>
      </identity>
    </endpoint>
    <endpoint address="mex" binding="mexTcpBinding" bindingConfiguration="" contract="IMetadataExchange"/>
    <host>
      <baseAddresses>
        <add baseAddress="net.tcp://localhost:8555/MilestoneService"/>
      </baseAddresses>
    </host>
  </service>
</services>
<behaviors>
  <serviceBehaviors>
    <behavior name="">
      <serviceMetadata httpGetEnabled="false"/>
      <serviceDebug includeExceptionDetailInFaults="false"/>
    </behavior>
  </serviceBehaviors>
</behaviors>

Ma question serait, comment puis-je régler l'inactivityTimeout à inifinte, et de contourner les erreurs que je reçois?

  • J'ai encore besoin NetTcpBinding.
  • OK mais alors il suffit de ne pas activer reliableSession si vous n'en avez pas besoin...