Keith Elder Microsoft MVP INETA Speaker Blog: Demystifying Windows Communication Foundation.

Slides:



Advertisements
Similar presentations
Indigo Jonathan Turnbull Nick Cartwright Ivan Konontsev Chris Bright.
Advertisements

Michael S. Chan xLM Solutions, LLC
Web Service Architecture
WCF Intro Scott Reed Owner - Brain Hz Software Instructor – DevelopMentor
May 2, 2006Shawn Mulkey - EECS Distributed Computing & Object Oriented Middleware: Part 2 Presented By Shawn Mulkey.
Aplicaciones Distribuidas Manuel Zegarra Sánchez Microsoft Certified Application Developer.
Developing Smart Client Applications For The Enterprise Keith Elder Team Leader / Sr. Software Engineer Quicken Loans Blog:
 Introduction  WCF Definition  WCF Architecture  Implementation  WCF Demo Overview.
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Windows Communication Foundation and Web Services.
Originally founded in 1985 as Rock Financial by Dan Gilbert Grew to one of the largest independent mortgage banks in the country 1998 IPO 1999 Launched.
Leveraging Enterprise Library in Your Applications Keith Elder Quicken Loans Manager, Sr. Software Engineer Microsoft MVP Keith a t keithelder dot net.
Structure and Guidance for Organizing Applications within Visual Studio Keith Elder Quicken Loans Manager, Sr. Software Engineer Microsoft MVP Keith a.
© 2007 Charteris plc20 June Extending Web Service Security with WS-* Presented by Chris Seary MVP Charteris plc, Bartholomew Close, London.
X.509 support in WCF Exploring support for X.509 Certificates in Microsoft’s Windows Communication Foundation Paul Cormier UCCS CS591 Fall 2009.
Adam Dille CS526 – Spring  Advances in Microsoft’s service offerings  ASMX vs. WCF  Latest WCF Improvements (.NET 4.0)  No in-depth study of.
The Microsoft Technical Roadshow 2006 Windows Communication Foundation Mike Taulty Developer & Platform Group Microsoft Ltd
Web Services (ASMX 2.0 and WSE 3.0) Mike Taulty Developer & Platform Group Microsoft Ltd
Developing Asynchronous Database Applications with SQL Server 2005 Service Broker Noah Subrin Technical Lead SRA International.
Jon Flanders INT303. About Me  Jon Flanders –  Independent consultant/trainer  BizTalk MVP.
Module 13: WCF Receive Adapters. Overview Lesson 1: Introduction to WCF Receive Adapters Lesson 2: Configuring a WCF Receive Adapter Lesson 3: Using the.
Getting Started with Windows Communication Foundation 4.5 Ed Jones, MCT, MCPD, MCTS Consultant RBA Inc.
Getting Started with WCF Windows Communication Foundation 4.0 Development Chapter 1.
Nikola Dudar Program Manager Microsoft Corporation Session Code: DTL 311.
Copyright ©2004 Virtusa Corporation | CONFIDENTIAL Introduction to Windows Communication Foundation Ruwan Wijesinghe.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Data Parallel Application Development and Performance with Windows Azure Advisor : Professor Gagan Agrawal Present by : Yu Zhang.
CON 307 Developing Manageable WCF Services Chris Peiris | Avanade Rory Primrose | Avanade
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
1 Windows Communication Foundation: Integrating COM+ and MSMQ Applications Andy Milligan COM305 Program Manager Microsoft Corporation.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Intro to WCF From the beginning and uses Steve AppRochester.
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Random Logic l Forum.NET l Web Services Enhancements for Microsoft.NET (WSE) Forum.NET ● October 4th, 2006.
Developing Web Services Using ASP.NET and WSE That Interoperate with the Windows Communications Foundation ("Indigo") Mark Fussell COM432 Lead Program.
Virtual techdays INDIA │ august 2010 Deep Dive into WCF 4.0 Features Sarath S S V S │ Program Manager, BING, Microsoft India R&D.
.NET Enterprise Services COM+ 1.5 麥超俊 Bobby Mak 架構技術推廣經理開發工具暨平台推廣處台灣微軟股份有限公司.
Mahesh Krishnan, Senior Consultant, Readify Slide 1.
Windows Communication Foundation David Anderson Independent Software Developer DCOM Productions.
Web Services Security with Visual Studio 2005 Muhammad Saqib Ilyas
Presentation 24: Windows Communication Foundation Introduced Objektorienteret Netværkskommunikation.
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
Dhananjay Kumar MVP-Connected System 1. WCF  Agenda What is WCF ? Why WCF? Address, Binding, Contract End Points Hosting Message Patterns Programming.
Christian Weyer thinktecture.
Introduction to.NET FX 3.0 (+ sneak preview of.NET FX 3.5) Martin Parry Developer & Platform Group Microsoft Ltd
The SOAP Story Martin Parry Developer & Platform Group Microsoft Ltd
Windows Communications Foundation ("Indigo"): Writing Secure Distributed Applications Martin Gudgin COM312 Program Manager Microsoft Corporation.
Windows Communication Foundation António Cruz Freelancer (SAPO/PT.COM)
Shani Raba Team Leader & Software Architect
Windows Communication Foundation Stipe Ivan Latković.
Nati Dobkin
O VERVIEW OF SOA AND WCF Jinaldesai.net – My Thouths And Learnings.
Windows Communication Foundation. Agenda How We Got Here ASMX vs WCF Throwdown WCF Contracts Service Data Message Bindings Security Reliability Declarative.
Windows Communication Foundation Part 1 You can reuse these slides but please mention the original source if you want to do so. Speaker: Nguyễn Bá Quang.
Windows Communication Foundation and Web Services
Windows Communication Foundation
Segments Introduction: slides 2–7 10 minutes
4/12/2018 2:37 PM Windows Communication Foundation: Migration, interop, upgrade, and integration Risman Adnan ISV Lead, Microsoft Indonesia
Windows Communication Foundation
Windows Communication Foundation
Window Communication Foundation
Windows Communication Foundation (WCF)
Windows Communication Foundation and Web Services
Windows Communication Foundation
Creating Custom Workflow Activities with Windows Workflow Foundation
Security & .NET 12/1/2018.
Windows Communication Foundation (WCF)
Distributed Applications on Windows Vista
The SOAP Story Martin Parry Developer & Platform Group Microsoft Ltd
Presentation transcript:

Keith Elder Microsoft MVP INETA Speaker Blog: Demystifying Windows Communication Foundation

Originally from Ripley, Ms 1.Raised on a small farm 2.Yes I have milked a cow, slopped the chickens and fed the hogs 3.Home of the 2 nd largest flea market in the US

Modelled During the 80's

Quicken Loans $500! Cash!

About Quicken Loans Originally founded in 1985 as Rock Financial by Dan Gilbert Grew to one of the largest independent mortgage banks in the country 1998 IPO 1999 Launched Rockloans.Com 1999 Intuit, Inc (makers of TurboTax and Quicken) purchased Rock Financial. July 2002 Dan Gilbert purchased Quicken Loans back from Intuit. Retained Quicken Loans branding and marketing initiatives employees Largest online retail home loan lender

Deep Fried Bytes is an audio talk show with a Southern flavor hosted by technologists and developers Keith Elder and Chris Woodruff. The show discusses a wide range of topics including application development, operating systems and technology in general. Anything is fair game if it plugs into the wall or takes a battery.Keith Elder Chris Woodruff

Agenda How We Got Here ASMX vs WCF Throwdown WCF Contracts Service Data Message Bindings Security Reliability Declarative Summary

From Objects to Services PolymorphismEncapsulationSubclassing Message-basedSchema+Contract Binding via Policy 1980s 2000s Interface-based Dynamic Loading Runtime Metadata 1990s Object-Oriented Service-Oriented Component-Based

The Challenge Radically Simplifying Distributed Application Development Development of connected systems remains costly and frustrating Different programming models for different tasks Need for security and reliable messaging Interoperability with applications on other platforms Productive service-oriented programming model needed

Windows Communication Foundation Unified framework for rapidly building service-oriented applications

What Does WCF Replace? ASMXWSE.NET Remoting COM+ (Enterprise Services) MSMQ

DEMO

OUR CURRENT ASMX SERVICES INVESTMENT VS WCF

Current ASMX Web Services

What’s So Different About WCF

UNDERSTANDING WCF PRINCIPLES

Services and Clients ClientService Message Message

Endpoints ClientService Message EndpointEndpoint Endpoint

Address, Binding, Contract ClientService Message AddressBindingContract (Where)(How)(What) Endpoint ABCABC Endpoints ABC

WCF Architecture: Messaging Runtime TransportEncoderProtocol(s)TransportEncoderProtocol(s) Client Dispatcher Service Contract and Behaviors Binding Address

CONTRACTS The what

Three Types of Contracts Service Contract Defines Operations, Behaviors and Communication Shape What does your service do Data Contract Defines Schema and Versioning Strategies What obect data is used Message Contract Allows defining application- specific headers and unwrapped body content Allows control over the SOAP structure of messages

Ways to Talk One Way: Datagram-style delivery Request-Reply Immediate Reply on same logical thread Duplex Reply “later” and on backchannel (callback-style) ClientService One Way Request-Reply Duplex (Dual)

SERVICE CONTRACTS What does your service do?

Service Contract using System.ServiceModel; [ServiceContract] public interface ICalculate { [OperationContract] double Add( double a, double b); [OperationContract] double Subtract( double a, double b); }

Service Contract: OneWay [ServiceContract] public interface IOneWayCalculator { [OperationContract(IsOneWay=true)] void StoreProblem (ComplexProblem p); }

Service Contract: Duplex Asymmetric [ServiceContract(Session=true, CallbackContract=typeof(ICalculatorResults)] public interface ICalculatorProblems { [OperationContract(IsOneWay=true)] void SolveProblem (ComplexProblem p); } public interface ICalculatorResults { [OperationContract(IsOneWay=true)] void Results(ComplexProblem p); }

Service Contract: Duplex Symmetric [ServiceContract(Session=true, CallbackContract=typeof(IChat)] public interface IChat { [OperationContract(IsOneWay=true)] void Talk(string text); }

DEMO – SERVICE CONTRACT

DATA CONTRACTS What object data needs to flow back and forth?

Data Contract [DataContract] public class ComplexNumber { [DataMember] public double Real = 0.0D; [DataMember] public double Imaginary = 0.0D; public ComplexNumber(double r, double i) { this.Real = r; this.Imaginary = i; } }

MESSAGE CONTRACTS Defines the mapping between the type and a SOAP envelope

Message Contract [MessageContract] public class ComplexProblem { [MessageHeader] public string operation; [MessageBody] public ComplexNumber n1; [MessageBody] public ComplexNumber n2; [MessageBody] public ComplexNumber solution; // Constructors… }

BINDINGS

Bindings & Binding Elements Transport IPCMSMQ Custom TCPHTTP Protocol Encoders.NETTX Custom SecurityReliability Binding HTTPTXSecurityReliabilityText Binary Custom

Standard Bindings BindingInteropSecuritySessionTXDuplex BasicHttpBindingBP 1.1N, TNNn/a WSHttpBindingWSM, T, XN, T, RSN, Yesn/a WSDualHttpBindingWSMRSN, YesYes WSFederationBindingFederationMN, RSN, YesNo NetTcpBinding.NETT, MT,RSN, YesYes NetNamedPipeBinding.NETTT, NN, YesYes NetPeerTcpBindingPeerTNNYes NetMsmqBinding.NETT, M, XNN, YesNo MsmqIntegrationBindingMSMQTNN, Yesn/a N = None | T = Transport | M = Message | B = Both | RS = Reliable Sessions

Bindings & Behaviors: Security Service CBA CBA Client A BC CBA Be Bindings Insert Claims in Messages Behaviors Implement Security Gates

Claims based end-to-end security Secure end-to-end message exchanges Secure access to resources Record resource access requests X509, Username/Password, Kerberos, SAML, custom credentials Message security Confidentiality and integrity Transport or message level Access to resources Authentication and authorization Feature Overview Security

DEMO - BINDINGS

Bindings & Behaviors: Transactions Service CBA CBA Client A BC CBA Be Bindings Flow Transactions Behaviors AutoEnlist and AutoComplete

Service CBA CBA Client A BC CBA Bindings provide Session and Guarantees Bindings & Behaviors: Reliable Sessions

End-to-end Reliable messaging In-order guarantees Exactly once guarantees Transport-Independent Sessions Integration with ASP.NET Sessions in IIS-Hosted compatibility mode Transactions Guaranteed atomic success or failure across services Feature Overview Reliability and Transactions

Code vs. Config

Defining Endpoints <endpoint address="Calculator" bindingSectionName="basicProfileBinding" contractType="ICalculator" />

Configuring Bindings

Custom Bindings

DEMO – MULTIPLE BINDINGS

Application Service Model Messaging HostingEnvironments ASP.NETASP.NETWPFWPFWinFormWinForm NT Service COM+COM+ TCPChannelTCPChannel HTTPChannelHTTPChannel QueueChannelQueueChannel Secure Channel Secure Channel ReliableChannelReliableChannel Instance Behavior Throttling Behavior Type Integ. Behavior Behavior Transaction Behavior Concurrency Behavior Error Behavior Metadata Behavior BinaryEncoderBinaryEncoder Text/XMLEncoderText/XMLEncoder …… … … …… WCF Summary WASWAS

WCF is the future of distributed computing It combines the best of all existing Microsoft distributed computing stacks It uses WS-* standards for interoperability and.NET value-add for performance and integration with existing solutions WCF is available for Windows Vista, Windows XP SP2, Windows Server 2003, Windows Server 2008