Como adicionar suporte assíncrono a um serviço .NET 4.5 WCF para que ele não perturbe os clientes existentes?

Eu tenho um serviço WCF existente com um ponto de extremidade SOAP, usando o .NET 4.5. A maior parte do código do cliente existente está usando oChannelFactory<T> abordagem de proxy.

Gostaria de mudar o serviço para dar suporte aoasync / await modelo para várias operações de E / S e banco de dados do lado do servidor.

O problema que estou tendo é que adicionar oasync A palavra-chave para as chamadas do método WCF requer a alteração de suas assinaturas de interface paraTask<T>. Por sua vez, isso parece exigir alterações no código do cliente.

Enquanto mantém o código de serviço assíncrono "até o fim", existe uma maneira simples de manter a API exposta inalterada?

questionAnswers(1)

yourAnswerToTheQuestion