Introdução ao Windows Communication Fundation

Em novembro de 2006 a Microsoft lançou o framework 3.0 e quatro plataformas de tecnologias com ele, o Windows presentation fundation, Windows communication fundations, Windows cardspace e Windows workflow foundation

.

Vamos falar do Windows communication fundation.

Com a evolução tecnologia, houve a necessidades de desenvolver vários softwares, e com eles é preciso fazer a integração com o legado, necessidade de conexão com outros softwares, aplicações distribuídas, tantas conexões e ou distribuições eram feitas com COM+, CORBA, MSMQ, WebServices, Sockets, Remoting , entre outras.

Para facilitar essa Interoperabilidade, produtividades com tecnologias atuais, desenvolvimento orientado a serviços, o Windows communication fundation trata esse assuntos.

Daqui por diante irei chamar o Windows communication fundation de WCF.

O WCF permite que a conexão entre as aplicações não seja somente em .Net e sim entre varias plataformas, pois o WCF tem suporte a Protocolos WS.
Se você use uma tecnologia Microsoft para aplicações distribuídas como webservices, msmq e remoting e gostaria de usar WCF, não é preciso reescrever código, pois o WCF trabalha lado a lado com essas tecnologias.

O WCF funciona com a comunicação entre serviços e esses serviços fazem a troca de mensagens entre client e services e pode ter mais de uma direção.

A comunicação do WCF é feita em endpoints, tanto o client como services precisa de endpoints, um services pode ter um ou mais endpoints, então eu posso ter um serviço que pode ser consumido por uma empresa externa e outro endpoint sendo consumido dentro da empresa.

O endpoint é composto de três partes, que chamamos o ABC do WCF:



“A” de Address, é o caminho desse serviço, exemplo, scheme://host:[porta]/path. O address normalmente é definido por uma instância da classe Uri.

“B” de Binding, de como será feita essa comunicação com aquele endpoint se será via HTTP, via tcp, etc; O WCF disponibiliza vários bindings.

BasicHttpBinding;
WebHttpBinding;
WSHttpBinding;
WSDualHttpBinding;
WSFederationHttpBinding;
NetTcpBinding;
NetPeerTcpBinding;
NetNamedPipeBinding;
NetMsmqBinding;
MsmqIntegrationBinding;
Nos próximos artigos explicarei cada binding.

“C” de Contract, o que esse serviço ira me prover, quais operações, quais métodos, o contract precisa ser respeitado tando no client como no services.
Para consumir um serviços wfc, é necessário saber o endereço desse serviço, após fazer referencia do mesmo, é feito o  download dos metadados, nos metadados você terá informações detalhadas de binding e contract e com isso você poderá comunicar com o serviço,  com esse metadados será criado o Proxy no cliente fazendo a comunicação com os usuários.

Behaviors são comportamentos internos do serviço e pode ser definidos opcionalmente, com os behaviors podemos definir uma configuração adicional, se o serviço necessita de suporte a transações, sessões, funcionalidades de segurança, modelos de instancias(single,percall ou Per session).

O serviço WCF é um código gerenciado, código .Net e por isso você pode hospedar em qualquer aplicação .Net, como uma aplicação console, Windows services, Windows forms ou hospedar no IIS

Espero que tenham gostado e até a proxima.

http://www.nandosilva.com

@nandinhors

Artigos relacionados