Arquitetura em prática

por Fabio Margarito Martins de Barros

12º Reunião do Grupo .NetArchitects

No sábado(17/07), houve o 12º encontro do grupo .Net Architects. Desta vez o tema foi WCF(Windows Communication Foundation) o qual foi apresentado pelo Rafael Godinho especialista em desenvolvimento do grupo de evangelização de tecnologias da Microsoft. O Rafael abordou vários assuntos interessantes com propriedade, passando pelo básico e alternando entre conceitos e exemplos práticos, ou seja, agradou a quem não conhecia quase nada, e trouxe novos conhecimentos aos que já trabalham com esta tecnologia.

Alguns tópicos:

  • O que é WCF?
  • O que não é WCF?
  • Definição do termo serviços
  • Serviços REST com WCF
  • Hospedagem de serviços WCF
  • Cenários de utilização

Logo em seguida fomos para a discussão saindo de WCF, passando por ESB(Enterprise Service Bus), EAI(Enterprise Application Integration) e até por OSLO. Pena que não conseguimos gravar a discussão devido a problemas técnicos, e por isso recomendo a reunião presencial.Outro ponto positivo da discussão foi ter a oportunidade de trocar idéias com profissionais que dificilmente teríamos contato de outra forma, como o Waldemir Cambiucci, arquiteto de solução da Microsoft e MVPs como o Giovanni Bassi

Alguns Links úteis:

E a próxima reunião será sobre OSLO com o Waldemir Cambiucci.

[]'s

Fábio Margarito

Posted: jul 19 2009, 12:50 by fabiomargarito | Comentários (6) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Centralizar configuração de clientes WCF

        No projeto que estou trabalhando, tenho um componente que será utilizando por diversos clientes e irá realizar a chamada a um serviço WCF. Como sabemos há duas formas de criar um cliente WCF, via código, criando um ChannelFactory onde informamos o famoso trio ABC(Address/Binding/Contract), ou através do utilitário svcutil.exe(Este utilitário também é chamado quando utilizamos o Add Service Reference no Visual Studio) , que cria um Proxy e inclui no arquivo de configuração diversos nodes com as configurações obtidas no serviço. Aí o problema, não gostaríamos que cada cliente fosse obrigado a incluir em seu .config as configurações de nosso framework e caso o endereço do endpoint fosse alterado, teríamos problemas sérios para atualizar todos os clientes(e são muitos).  Procurando meios de centralizar o arquivo de configuração do serviço WCF, um integrante da equipe, o Fabio Gouw, encontrou uma classe utilitária no blog do MVP Pablo M. Cibraro. Ele a criou para fazer justamente o que queríamos, basicamente você cria um ChannelFactory através de um classe que o autor criou, esta classe herda de ChannelFactory e ao instanciá-la você informa o contrato e o caminho do arquivo de configuração. Na seqüência você cria o canal, tudo muito simples. Há outras sobrecargas no método que cria o canal, como, por exemplo, informar o binding ou o endereço do endpoint. Vale à pena dar uma olhada nos fontes, o código é simples e totalmente adaptável.

Exemplo de utilização:

FwkClientChannelFactory<IContrato> oChannel = new FwkClientChannelFactory<IContrato>("Path do arquivo de configuração");

IContrato oWcfClient = oChannel.CreateChannel();

oWcfClient.NomeMetodo();

Para baixar a classe utilitária e seus fontes, utilize o link: (http://weblogs.asp.net/cibrax/archive/2007/10.aspx) 

Até mais 

Posted: nov 24 2008, 22:36 by fabiomargarito | Comentários (1) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5