I have a light Client application, that makes Asyncronous WCF calls to a IIS host WCF service. Then the hosted service acts as a Client to make SOAP calls to another external service, does some work then return the result back to client.
Client >> WCF IIS Service >> SOAP Service
I spent alot of time, making sure the Client > WCF IIS Service was multithreaded and Asyncronous, only to find it bottlenecking Syncronously from the WCF IIS Service >> SOAP Service.
Is there a way to make Client Async calls to the WCF IIS Service, which in turn makes Async alls to the SOAP service, then returns the result back down to the CLient?
Kind of boggles my mind right now, any help appreciated.
Yes if I understand you rightly you may just need to set AsyncPattern = true in the WCF server OperationContract, then you implement each WCF server call using a BeginXXX and EndXXX method.
If you currently have the WCF server calls implemented synchronously you should just be able to use BeginInvoke on the synchronous method at first, although better to make them fully async obviously.