Upload
giles
View
48
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Windows Communication Foundation (WCF). Dhananjay Kumar MVP-Connected System. WCF. Agenda What is WCF ? Why WCF? Address , Binding, Contract End Points Hosting Message Patterns Programming Model Basic Task Cycle. From Objects to Services. Object-Oriented. Polymorphism - PowerPoint PPT Presentation
Citation preview
Microsoft SharePoint
Windows Communication Foundation(WCF)Dhananjay Kumar MVP-Connected System
1WCFAgendaWhat is WCF ?Why WCF?Address , Binding, Contract End PointsHosting Message PatternsProgramming Model Basic Task Cycle
22From Objects to Services
PolymorphismEncapsulationSubclassingMessage-basedSchema+ContractBinding via Policy1980s2000s
Interface-basedDynamic LoadingRuntime Metadata1990sObject-OrientedService-OrientedComponent-Based6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.3
Services and consumers are independently versioned, deployed, operated, and secured.Autonomous EvolutionData never includes behavior; Objects with data and behavior are a local phenomenon.Share schema & contract, not classCapabilities and requirements represented by a unique public name; Used to establish service suitability.Compatibility based on policyDevelopers opt-in to consuming, exposing, and defining public-facing service faade.Boundaries are ExplicitThe Four Tenets of Service-Orientation6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.4
Facilitates implementation/platform interopIndependent deployment, versioning, mgmtPromotes technology reuse
Benefits of Service Orientation6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.5
The Challenge Radically Simplifying Distributed Application DevelopmentDevelopment of connected systemsremains costly and frustrating Different programming models for different tasksNeed for security and reliable messagingInteroperability with applications on other platformsProductive service-oriented programming model needed6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.6
WCF
Unified framework for rapidly buildingservice-oriented applications6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.7WCFWhat is WCF ?Service Oriented programming model to develop connected applications.
SDK to develop and deploy services on windows.
Unifies the existing suite of .Net distributed technologies into a single programming model.
8Microsoft Innovation & Practice Team, MSCoE
Unifies todays distributed technology stacksCompose able functionalityThe unified programming model for rapidly building service-oriented applications on the Windows platform
WS-* interoperability with applications running on other platformsInteroperability with todays distributed stacksWCF Design GoalsUnificationInteroperability & Integration
Service-oriented programming modelSupports 4 tenets of service-orientation
ProductiveService-OrientedProgramming6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.9
Services and ClientsClientService
Message
Message
6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.10Endpoints
ClientService
Message
Endpoint
Endpoint
Endpoint6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.11End PointsMicrosoft Innovation & Practice Team, MSCoE12Address, Binding, Contract
ClientService
Message
A
B
C
A
B
C
A
B
C
AddressBindingContract(Where)(How)(What)6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.13WCF Architecture: Messaging Runtime
Transport
Encoder
Protocol(s)
Transport
Encoder
Protocol(s)
Client
Dispatcher
ServiceContractandBehaviorsBindingAddress6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.14AddressEvery service is associated with a unique address.
15Microsoft Innovation & Practice Team, MSCoEAddressWCF supports following Transport
16Microsoft Innovation & Practice Team, MSCoEBinding Describes how a service communicatesSpecifies set of binding elementsTransport; http, tcp, np, msmqEncoding format; text, binary, MTOM, ...Security requirementsReliable session requirementsTransaction requirementsSet of predefined standard bindingsCan be customizedCustom binding
17Microsoft Innovation & Practice Team, MSCoEBindings & Binding ElementsTransport
IPCMSMQCustomTCPHTTPProtocol
Encoders
.NETTXCustomSecurityReliabilityBinding
HTTPTXSecurityReliabilityTextTextBinaryCustom6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.18BindingMicrosoft Innovation & Practice Team, MSCoE19Binding Name as of classTransportEncodingInteroperableBasicHttpBindingHTTP/HTTPSText,MTOMYesNetTcpBindingTCPBinaryNoNetPeerBindingP2PBinaryNoNetNamedPipeBindingIPCBinaryNoWSHttpBindingHTTP/HTTPSText,MTOMYesWSFederationHttpBindingHTTP/HTTPSText,MTOMYesWSDualHttpBindingHTTPText,MTOMYesNetMsmqBindingMSMQBinaryNoMsmqIntegrationBindingMSMQBinaryYes19ASMX/WSE3WCFWCFASMX/WSE3Choosing BindingsMSMQWCFWCFMSMQWS-* ProtocolsWS-* ProtocolsMSMQ ProtocolMSMQ ProtocolMSMQBindingMSMQBindingHttp/WSBindingHttp/WSBindingOther PlatformWCFWCFOther PlatformWS-* ProtocolsWS-* ProtocolsHttp/WSBindingHttp/WSBindingWCFWCFAny ProtocolAnyBindingAnyBinding6/1/2010 9:10 PM 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.20Configuring Bindings