Hoje estava navegando e encontrei um exemplo de criação dinamica de proxies para serviços WCF. Trata-se de uma library desenvolvida pela Microsoft que, dado uma URI até o WSDL do serviço, extrai todos os dados dos endpoints que o mesmo disponibiliza.
Além disso, ainda permite a chamada de métodos, leitura e escrita de propriedades que o serviço (contrato) expõe. A sua utilização não me parece muito complicada:
using System.ServiceModel;
using System.ServiceModel.Description;
using WcfSamples.DynamicProxy;
string service = “http://localhost:2969/DevMinds.WebHostingCS/DefaultService.svc?wsdl“;
DynamicProxy proxy = new DynamicProxyFactory(service).CreateProxy(“IServiceContract”);
Console.WriteLine(proxy.CallMethod(“BoasVindas”, null));
Isso me parece muito útil quando desejarmos trabalhar de forma muito dinamica para a criação e testes de serviços WCF, permitindo uma maior flexibilidade. Ao meu ver, é útil para a criação de uma ferramenta que pode ser utilizada pós nós, desenvolvedores.