WCF Intro Scott Reed Owner - Brain Hz Software Instructor – DevelopMentor

Slides:



Advertisements
Similar presentations
3/25/2017 8:53 AM Windows Communication Foundation (“Indigo”): A Deep Dive Into Extending The Channel Layer Kenny Wolf, Software Development Engineer.
Advertisements

Indigo Jonathan Turnbull Nick Cartwright Ivan Konontsev Chris Bright.
Michael S. Chan xLM Solutions, LLC
GETTING STARTED WITH WINDOWS COMMUNICATION FOUNDATION 4.5 Ed Jones & Grey Guindon.
1 Windows Communication Foundation Adapters in BizTalk Server 2006 R2 Ulrich Roxburgh Services2 Ltd. SOA307.
Web Services Darshan R. Kapadia Gregor von Laszewski 1http://grid.rit.edu.
WCF Extensibility Scott Reed Owner - Brain Hz Software Instructor – DevelopMentor
Zoiner Tejada Hershey Technologies. About Zoiner Tejada.
 Introduction  WCF Definition  WCF Architecture  Implementation  WCF Demo Overview.
Windows Communication Foundation and Web Services.
Darryl Burling Developer Evangelist Microsoft The age of connected applications Whats new in VS2008 WCF Background: WS*,.Net 3.0 and WCF ABC’s & improvments.
The Microsoft Technical Roadshow 2006 Windows Communication Foundation Mike Taulty Developer & Platform Group Microsoft Ltd
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.
Copyright ©2004 Virtusa Corporation | CONFIDENTIAL Introduction to Windows Communication Foundation Ruwan Wijesinghe.
[Title of the course] WCF
BOB Tech Demo 2003 G2E – Las Vegas. Agenda  Best of Breed – a layering of standards  Standards, messaging, protocols and why you care  From the bottom.
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#:
Enabling Embedded Systems to access Internet Resources.
Presentation: Other Object Oriented Middlewares. Outline Web services Java RMI.NET Remoting WCF For each technology Compare: heterogenity (platform, OS,
CSCI 6962: Server-side Design and Programming Web Services.
Lecture 15 Introduction to Web Services Web Service Applications.
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.
Paul Johansen – October Mankato.NET Users Group. Agenda  WCF Essentials  Bunch o’ demos Coding from scratch Why the Visual Studio tools suck  Additional.
Random Logic l Forum.NET l Web Services Enhancements for Microsoft.NET (WSE) Forum.NET ● October 4th, 2006.
A Deep Dive into Best Practices with the Windows Communication Foundation John Justice COM415 Program Manager Microsoft Corporation.
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.
Telerik Software Academy Web Services & Cloud.
Introducing the ABCs of Windows Communication Foundation | Feb 2006 rickgaribay.net Windows Communication Foundation Hosting & Endpoints Winter 2006.
COM326: Web Services for XML Programmers Doug Purdy Lead Program Manager Connected Systems Division.
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
Kemal Baykal Rasim Ismayilov
Windows Communication Foundation David Anderson Independent Software Developer DCOM Productions.
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.
Endpoints Lesson 17. Skills Matrix Endpoints Endpoints provide a reliable, securable, scalable messaging system that enables SQL Server to communicate.
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
Windows Communication Foundation António Cruz Freelancer (SAPO/PT.COM)
Justin Smith Technical Evangelist Microsoft Corporation CON301.
Shani Raba Team Leader & Software Architect
OE-NIK HP Advanced Programming WCF WCF SOAP service, host, client Exception handling (NOT required)
Windows Communication Foundation Stipe Ivan Latković.
Windows Communication Foundation and Web Services
Jim Fawcett CSE681 – SW Modeling & Analysis Spring 2005
Windows Communication Foundation
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
Configuring and Hosting WCF Services
Window Communication Foundation
WCF.
Windows Communication Foundation (WCF)
Windows Communication Foundation and Web Services
Windows Communication Foundation
WCF (Indigo): Under the Hood of the Channel Layer
Windows Communication Foundation (WCF)
Creating a Distributed System with Remote Procedure Calls and Web Services Ch.5 B.Ramamurthy 2/17/2019 B.Ramamurthy.
Distributed Applications on Windows Vista
The SOAP Story Martin Parry Developer & Platform Group Microsoft Ltd
WCF Data Services and Silverlight
Presentation transcript:

WCF Intro Scott Reed Owner - Brain Hz Software Instructor – DevelopMentor

Agenda Why WCF? Architecture Programmatic client and service Moving to configuration Sharing contracts Summary

Before WCF TechnologyProsCons SocketsFlexibleCode everything RPCImperative request/replySimplistic, synchronous DCOMTrxs, SecurityComplex, hard to debug/maintain.NET RemotingEasy, configurable, extensible No interoperability ASMX Web ServicesEasy, interoperableSimplistic, Security=SSL only WSE 2.0/3.0Added message securityNot as easy, Verbose, still lacking MSMQAsync, solves availabilityExplicit message passing Clearly not an enabling technology, instead it is unifying

WCF Design goal Design goal: – To be the best way to get any two pieces of software to communicate under any circumstances To achieve this had to abstract communication – Services are programs that exchange messages – Lower layer sends messages through channels

Messages Packaged data Abstraction of a SOAP message – Xml InfoSet not actually XML Created using factory method – Message.CreateMessage

Channels Channel transmit those messages Channels together form a stack Protocol channels can be layered on top – Provide services like reliability and security Encoder changes Message to byte[] Transport channel actually sends the bytes

Channel Stack óöu»×{ÊêCÌã³û¢Ì\ÓÒÐ(02 Encoder Transport Channel Protocol Encoder Transport Channel Protocol óöu»×{ÊêCÌã³û¢Ì\ÓÒÐ(02

Programming in the Channel Layer Explicit message passing like in sockets or MSMQ – What happened to easy? void ChannelListen() { IChannelListener listener = GetListener(); listener.Open(); while (listener.WaitForChannel()) { IReplyChannel channel = listener.AcceptChannel(); channel.Open(); RequestContext request = channel.ReceiveRequest(); Message reply = HandleMessage(request.RequestMessage); request.Reply(reply); request.Close(); channel.Close(); } void ChannelListen() { IChannelListener listener = GetListener(); listener.Open(); while (listener.WaitForChannel()) { IReplyChannel channel = listener.AcceptChannel(); channel.Open(); RequestContext request = channel.ReceiveRequest(); Message reply = HandleMessage(request.RequestMessage); request.Reply(reply); request.Close(); channel.Close(); }

Service Model Layer Sits on top of Channel Layer and hides it Allows method invocation of strongly typed parameters Uses serialization to translate objects into messages

The Big Picture protocol encoder transport protocol encoder transport serializer proxy dispatcher service object Service Model Layer Channel Layer

Endpoint Clients talk to endpoints, and services expose endpoints Address Binding Contract

BCA BCA BCA BCA BCA ClientService

WCF in all its glory Business Partner Customer wsHttpBinding (feature rich) basicHttpBinding (compatibility) netTcpBinding (performance) netMsmqBinding (batch processing) netNamedPipeBinding (local, fast) Browser webHttpBinding (AJAX, JSON…)

Hosting Need something to listen for incoming connections (a host) WCF is host independent (by default) Self host (Console, NT Service, Forms/WPF App) – Use the ServiceHost class (Open and Close) IIS/WAS hosted – Use a.svc file (just like ASMX) WCF provided host for testing * – WcfServiceHost

Step by step Define the contract Implement the contract Host the service Expose endpoints Optionally expose metadata

Demo Writing a programmatic client and a service

Configuration Why do it in config? – So you don’t have to recompile Everything you do in code can be done in config (almost)

Demo (revisited) Changing to a config file

Sharing contracts Both the client and the service need to know the types and methods listed in the contract There are two ways to accomplish this: – Share types (ala Remoting) – Share schema (ala ASMX)

Demo (revisited again) Exposing metadata (base and explicit) Generating a proxy

Summary WCF unifies communications technology Architected in two layers: – Channel layer and Service Model layer Endpoints are ABCs Two ways to share contract (type and schema)