Introdução ao WCF - Windows Communication Foundation - Caio Proiete

33
Introdução ao Windows Communication Foundation (WCF) Caio Proiete http://netpont o.org 3ª Reunião Presencial - 17/10/2009

description

Apresentação sobre Windows Communication Foundation (WCF) com diversas demonstrações práticas de utilização, na terceira reunião presencial da comunidade NetPonto

Transcript of Introdução ao WCF - Windows Communication Foundation - Caio Proiete

  • 1. http://netponto.org
    3 Reunio Presencial - 17/10/2009
    Introduo ao Windows Communication Foundation (WCF)Caio Proiete

2. Caio Proiete
9 anos de experincia profissional em TI
H 3 anos em Portugal
Microsoft Most Valuable Professional 2008-2009
Microsoft Certified Trainer desde 2004
3. Agenda
O que WCF
Conceitos do WCF
Demonstrao: Criao Servio, Hosting e Client
Configurao Imperativa x Declarativa
Os Tipos de Mensagens
Os Bindings do WCF
Os Tipos de Hosting
4. O que WCF
Windows Communication Foundation uma plataforma unificada de comunicao.
Cliente
Servio
Comunicao
5. Antes do WCF...
Cliente
Servio
6. Antes do WCF...
Cliente
Servio
.NET Remoting
ASMX
WSE
MSMQ
EnterpriseServices
...
7. Depois do WCF...
WCF
Cliente
Servio
.NET Remoting
ASMX
WSE
MSMQ
EnterpriseServices
...
8. O que WCF
Plataforma para criao de sistemas distribudos
Permite separar infraestrutura de comunicao da implementao das regras de negcio
Conjunto de extenses adicionadas ao .NET Framework 2.0, lanado com o .NET Framework 3.0
E funciona no Windows XP, Vista, 7, 2003, 2008, ...
9. O que WCF
Principais assemblies
System.ServiceModel
Criao dos servios, endpoints, behaviors, etc...
System.Runtime.Serialization
Serializao / Deserializao de objectos
System.IdentityModel
Segurana, CardSpace API
10. WCF: Conceitos
Service
Endpoint
Address, Binding, Contract
Metadata
Behavior
Proxy
Hosting
11. WCF: Conceitos > Endpoint
Cliente
Servio
Endpoint
Mensagem
Endpoint
Endpoint
12. WCF: Conceitos > Endpoint (ABC)
Address, Binding, Contract
Cliente
Servio
A
C
B
Mensagem
A
C
B
C
A
B
Address
(onde)
Contract
(o que)
Binding
(como)
13. WCF: Conceitos > Endpoint (ABC)
Address - Onde encontrar o servio
http://localhost:8080/servicohttp://ctt.pt/servicos/codigopostalnet.tcp://localhost:5745/serviconet.tcp://servidor:9651/serviconet.pipe://localhost/serviconet.msmq://localhost/private/queue
...
14. WCF: Conceitos > Endpoint (ABC)
Binding - Como comunicar com o servio
BasicHttpBinding
WSHttpBinding
NetTcpBinding
NetNamedPipeBinding
NetMsmqBinding
...
15. WCF: Conceitos > Endpoint (ABC)
Contract - O que o servio permite fazer
[OperationContract]
List ObterProdutos(string categoria);
[OperationContract]
void GravarProduto(Produto p);
...
16. WCF: Conceitos > Metadata
Expe os Endpoints de um servio em XSD e WSDL
Metadata
Cliente
Servio
A
C
B
Mensagem
A
C
B
C
A
B
17. WCF: Conceitos > Behaviors
Permite customizar comportamentos dos servios
Metadata
Cliente
Servio
A
C
B
Mensagem
Bhv
Bhv
A
C
B
C
A
B
Modelo de instncia, concorrncia, transaes, ...
18. Permite customizar comportamentos dos servios
Hosting
WCF: Conceitos > Proxy e Hosting
Metadata
Cliente
Servio
A
C
B
Mensagem
Proxy
Bhv
Bhv
A
C
B
C
A
B
19. CriaoServio, Hosting e Client
demonstrao
20. Tipos de Configurao
Configurao Imperativa
Configurao via cdigo
Configurao Declarativa
Configurao via parmetros definidos no arquivo de configurao (App.config, Web.config)
21. ConfiguraoDeclarativa
demonstrao
22. Os Tipos de Mensagens
Request-Reply
Padro. Chamada de operao e retorno de resposta
One-Way
Chamada de operao sem retorno de resposta
Duplex (Callbacks)
Comunicao bi-direccional
23. MensagemOneWay
demonstrao
24. Os Bindings do WCF
Em resumo, esto divididos em
Baseados em HTTP
Orientados a conexo
Baseados em fila
25. Bindings baseados em HTTP
Tipicamenteutilizados para comunicao via Internet, Intranet
BasicHttpBinding
WebHttpBinding
WSHttpBinding
WSDualHttpBinding
WSFederationHttpBinding
26. Bindings orientados a conexo
Tipicamenteutilizados para comunicao em rede local ou processos em uma mesma mquina
NetTcpBinding
NetNamedPipeBinding
27. Bindings baseados em filas
Tipicamenteutilizados para comunicao em rede local e Intranet
NetMsmqBinding
MsmqIntegrationBinding
28. Escolha dos Bindings
29. Os Tipos de Hosting
Self-Hosting
Windows Service
Windows Forms / WPF
Console Application
Managed-Hosting
IIS / WAS - Windows Process Activation Service
30. Dvidas?
31. Referncias
WCF Vdeos do Israel Ace
http://www.israelaece.com/post/WCF-Videos.aspx
WCF Guidance for WPF Developers
http://wcfguidanceforwpf.codeplex.com
WCFBrasil- Videos DemonstraesPrticas
http://wcfbrasil.ning.com/profiles/blogs/demonstracoes-praticas-wcf
WCF ScreenCasts Microsoft UK
http://www.microsoft.com/uk/msdn/screencasts/default.aspx
32. Patrocinador desta reunio
33. Obrigado!
Caio Proiete
[email protected]
http://caioproiete.com
http://twitter.com/caioproiete