We have a WCF logger wrapped in a windows service which exposes various methods which I can successfully call both synchronously and asynchronously from a simple console test app. Running the service from studio in debug mode I can see the various breakpoints being hit and we get the expected output.
When I call the same service methods synchronously from another WCF service the methods all work fine also...
using (var logger = new LoggerServiceClient())
logger.Log(...);
However, if I change to the Async method of invocation it simply does nothing...
using (var logger = new LoggerServiceClient())
logger.LogAsync(...);
I get no errors raised, the code happily continues on but nothing hits the logger service. It can't be permissions because the synchronous method calls work.
Like I say, the same code and config is in the test console app and that works perfectly. I can simply add or remove the "Async" suffix in the calling service though and the behaviour is different. We're using w7, framework 4.0, using tpl and 4.5 is not currently an option.
This has me stumped so any ideas, however strange, will be considered.