tags:

views:

806

answers:

1

I like using WCF callbacks when I can because to me it is better than the client having to poll the server and its more real time than polling. The question I have is when I subscribe to a WCF service event is there any kind of heart beat that keeps the connection alive between the client and the server. I starting to think that there is not because when the server goes away the subscription is lost and the client does not throw an exception (could be the exception is be swallowed by the WCF runtime). Same is true for the server, when the client goes away and the server attempts to invoke the callback and exception is throw. Any thoughts?

Thanks

+1  A: 

There is a good short description of the Duplex contract (WCF callbacks) in this link. The duplex contract is basically two one-way channels and there is no implied message correlation. You are right, there are no "heartbeat" messages are involved, only the normal wsHTTP handshaking traffic occurs when making a duplex call.

I fired up the HTTP traffic sniffer called Fiddler2 (an unsupported Microsoft tool) to verify the session traffic. Didn't see any under-the-hood HTTP "heartbeat" communication occurring during and after the service calls. I left the client running for a good while. Good question, it got me digging a bit.

Sixto Saez