WCF Tooling


A criação de serviços WCF envolve a construção de um contrato (interface), e depois a classe que o representará. Em seguida, para podermos expor ele para que os clientes possam consumir, precisamos utilizar algum host. Isso exige a configuração dos endpoints, behaviors, bindings, etc., e isso pode ser feito de forma imperativa ou declarativa.

Se tivermos toda a implementação pronta (a interface do contrato e a classe do serviço), podemos recorrer à algumas ferramentas que o WCF fornece, evitando assim escrever código para hospedar e/ou consumir o serviço. Utilizando essas ferramentas nos permite avaliar o comportamento, talvez analisar a performance, e tudo isso, sem a necessidade de gastar tempo configurando o servidor (o IIS por exemplo) ou criar um código para consumir o serviço. Para nos auxiliar, temos três ferramentas, que estão descritas abaixo:

  • Service Configuration Editor: Este editor fornece uma interface gráfica para efetuarmos a configuração do serviço WCF, e que resultará na criação ou edição de um arquivo de configuração (App.config ou Web.config). Ele exigirá que você informe em qual assembly está o serviço, identificará o(s) contrato(s) que ele implementa, e depois disso, você configura os endpoints, bindings, behaviors, etc., tudo de acordo com a sua necessidade.
  • WCF Service Host: Este utilitário recebe como parâmetro o assembly que contém o serviço e seu contrato. Além disso, um segundo parâmetro (que também é obrigatório), é o arquivo com extensão *.config onde está contida todas as configurações daquele serviço.
  • WCF Test Client: Este utilitário tem a finalidade de simular um cliente, para que você consiga efetuar o consumo do serviço sem a necessidade de criar uma aplicação para isso. Ele recebe como parâmetro o endereço do documento WSDL, e com isso, irá extrair todas as informações e criará um formulário para que possamos informar os eventuais parâmetros para as operações, e depois exibirá o resultado.

Essas ferramentas já são conhecidas. Quando você cria um projeto utilizando a template WCF Service Library, ao rodá-la, verá que ambos utilitários serão inicializados para testar o serviço. Através das imagens abaixo, podemos visualizar o serviço sendo configurado pelo Service Configuration Editor. Em seguida, ele sendo hospedado no WCF Service Host e, finalmente, o WCF Test Client que irá consumi-lo.

O editor nós podemos acessá-lo diretamente através do Visual Studio, clicando em cima do arquivo de configuração correspondente, e em seguida, na opção Edit WCF Configuration. Se quiser acessar diretamente, você pode recorrer ao menu Tools e depois WCF Service Configuration Editor. Já os outros utilitários estão disponíveis através do prompt de comando do próprio Visual Studio. Abaixo temos a utilização de cada um deles:

C:>WcfSvcHost /service:C:TempMeuServico.dll /config:C:TempMeuServico.dll.config
C:>WcfTestClient http://localhost:8383/?wsdl

É importante dizer que esses utilitários não funcionam em alguns cenários, como por exemplo, quando utilizamos callbacks. Neste caso, a única saída será recorrer a criação de um projeto para o consumo deste serviço.

Anúncios

2 comentários sobre “WCF Tooling

  1. Olá Israel.

    Muito bom artigo, só temos que tomar ao usar essas ferramentas quando meu WCF trabalhar com TCP IP, ou estou enganado? Lembro que tive alguns problemas com isso 😀

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s