Learn your way! Get started

WCF Using Visual C# 2008

with expert Robert Green


Course at a glance

Included in these subscriptions:

  • Dev & IT Pro Video
  • Dev & IT Pro Power Pack
  • Power Pack Plus

Release date Release date 4/20/2009
Level Level Advanced
Runtime Runtime 10h 31m
Closed captioning Closed captioning N/A
Transcript Transcript N/A
eBooks / courseware eBooks / courseware Included
Hands-on labs Hands-on labs Included
Sample code Sample code Included
Exams Exams Included


Enterprise Solutions
Enterprise Solutions

Need reporting, custom learning tracks, or SCORM? Learn More



Course description

In this course, you will learn how to use Windows Communication Framework (WCF) and you will see how it is a unified programming model for building service-oriented distributed applications. You will see how to build, host and call WCF services and you will gain a deep understanding of the basic building blocks of WCF, including endpoints, bindings and contracts. In addition, see how to handle exceptions, maintain state between calls to a service and use transactions. Subsequent topics include and basics of WCF security, integrating WCF with Windows Workflow Foundation and building WCF services that support Representational State Transfer (REST) and syndication. By the time you have completed the course, you will have a good understanding of how to build and use WCF services in your distributed applications.

Prerequisites

This course is designed for individuals with an intermediate knowledge of Visual C#, of building Windows and Console applications using Visual Studio 2008, and a familiarity with building and calling Web Services. You should also have a strong programming background.

Meet the expert

Robert Green Robert Green is a Visual Studio expert and a featured instructor for several of our Visual Basic and Visual C# courses. He is currently a Technical Evangelist in the Developer Platform and Evangelism (DPE) group at Microsoft. He has also worked for Microsoft on the Developer Tools marketing team and as Community Lead on the Visual Basic team. Robert has several years of consulting experience focused on developer training and is a frequent speaker at technology conferences including TechEd, VSLive, VSConnections, and Advisor Live.


Course outline



Module 1

Intro To WCF (20:34)
  • Introduction (02:02)
  • History (03:23)
  • Service Orientation (01:43)
  • Principles (02:16)
  • What"s Wrong (02:19)
  • WCF to the Rescue (00:56)
  • WCF vs Web Services (00:59)
  • WCF (00:39)
  • Demo: WCF Service (05:39)
  • Summary (00:33)
Building Blocks (38:44)
  • Introduction (00:30)
  • WCF Building Blocks (00:17)
  • Service (00:37)
  • Service Contracts (01:01)
  • Data Contracts (01:49)
  • Endpoints (02:04)
  • Bindings (00:42)
  • Provided Bindings (03:14)
  • Demo: WCF Service (11:38)
  • Hosting Service (05:30)
  • Client to Call Service (11:02)
  • Summary (00:14)

Module 2

IIS And Self Hosting (38:02)
  • Introduction (00:33)
  • Hosting a WCF Service (01:41)
  • Hosting Options (02:33)
  • Which Should You Use? (01:17)
  • Demo: Hosting Using IIS (08:29)
  • Self Host WCF Services (02:04)
  • Demo: Self Hosting (05:45)
  • Call Service From Client (08:07)
  • Multiple Endpoints (03:51)
  • Two Services (03:18)
  • Summary (00:19)
Config Files (38:16)
  • Introduction (00:36)
  • Defining Endpoints (01:31)
  • ServiceModel Config (01:11)
  • <services> Element (00:14)
  • Config Example (01:36)
  • Multiple Endpoints (00:40)
  • Demo: Config File (02:26)
  • Config Editor (08:25)
  • Config File for Client (02:22)
  • Channels (02:50)
  • Modifying Config Files (01:15)
  • Publishing Metadata (01:44)
  • Demo: Metadata (12:35)
  • Summary (00:44)
Windows Services And WAS (27:19)
  • Introduction (00:54)
  • Windows Services (00:59)
  • Demo: Windows Service (09:40)
  • Process Activation (01:23)
  • Demo: Install Components (01:28)
  • Add Host Project (04:23)
  • Different Protocols (05:30)
  • Update Client (00:22)
  • Update Form (02:12)
  • Summary (00:22)

Module 3

Channels And Bindings (22:31)
  • Introduction (00:51)
  • Channels (00:15)
  • Channel Stacks (02:50)
  • Bindings (00:58)
  • Binding Elements (00:15)
  • Binding Properties (00:33)
  • Demo: Properties (06:58)
  • Customize Bindings (04:54)
  • Bindings From Scratch (04:05)
  • Summary (00:46)
Service Contracts (27:30)
  • Introduction (01:12)
  • Overview (01:24)
  • Demo: Contracts (07:21)
  • Modifying Service Contracts (01:55)
  • Demo: Modifying (15:07)
  • Summary (00:29)
Data Contracts (25:12)
  • Introduction (00:35)
  • Overview (02:15)
  • Modifying Data Contracts (00:55)
  • Demo: Modifying (11:57)
  • Required (08:17)
  • Summary (01:12)

Module 4

Exception Handling (32:19)
  • Introduction (00:45)
  • Exceptions (01:27)
  • Fault Exceptions (01:50)
  • Demo: Exceptions (05:21)
  • Try Catch (02:17)
  • Handle Client Exception (05:37)
  • FaultReason (03:30)
  • Strongly Typed SOAP Faults (02:34)
  • Demo: SOAP Faults (08:10)
  • Summary (00:43)
Diagnostics (21:25)
  • Introduction (00:49)
  • Tracing Applications (00:51)
  • Trace Sources (00:22)
  • Trace Switches (00:45)
  • Trace Listeners (00:50)
  • Trace Filtering (01:04)
  • Message Logging (00:30)
  • Demo: Tracing (15:47)
  • Summary (00:23)
Message Patterns (21:00)
  • Introduction (00:33)
  • Message Exchange Patterns (01:42)
  • Demo: One-Way Duplex (06:02)
  • Duplex Pattern (01:10)
  • Duplex Communcation (00:56)
  • Demo: Duplex Communcation (10:05)
  • Summary (00:28)

Module 5

Sessions (41:01)
  • Introduction (01:02)
  • Sessions (02:07)
  • Bindings and Sessions (00:47)
  • Instancing (00:32)
  • PerCall Instancing (00:25)
  • PerSession Instancing (00:33)
  • Single Instancing (00:43)
  • Demo: TCP Sessions (05:21)
  • Demo: HTTP Sessions (02:48)
  • Demo: Instancing (02:42)
  • Control Sessions (01:21)
  • Demo: Control Sessions (14:23)
  • Sessions and Concurrency (00:29)
  • Single Thread Concurrency (00:30)
  • Reentrant Thread Concurrency (00:39)
  • Multiple Threads Concurrency (00:17)
  • Demo Scenario (01:20)
  • Demo: Concurrency (04:00)
  • Summary (00:55)
Transactions (37:15)
  • Introduction (00:46)
  • Transactions (01:10)
  • Enable Transactions in WCF (03:00)
  • Starting a Transaction (00:33)
  • Demo: Configure Transactions (16:39)
  • Transactions and Sessions (01:08)
  • Demo: Transactions-Sessions (13:22)
  • Summary (00:35)

Module 6

Security Basics (17:49)
  • Introduction (00:46)
  • Security Concepts (01:37)
  • WCF Security Mechanisms (00:15)
  • Transport Level Security (00:55)
  • Message Level Security (00:36)
  • Pros and Cons (02:08)
  • Default Security Settings (00:50)
  • Demo: Encrypting Messages (10:25)
  • Summary (00:14)
Authentication (45:17)
  • Introduction (00:44)
  • Overview (00:59)
  • Transport Security Credentials (00:55)
  • Message Security Credentials (01:02)
  • Default Security Settings (00:36)
  • Scenario (01:11)
  • Demo: Passing Credentials (02:51)
  • Demo: User Authentication (09:26)
  • Scenario (01:01)
  • Demo: Basic Authentication (09:15)
  • ASP Membership Provider (00:40)
  • Configure Web Site Security (00:31)
  • Configure Binding and Service (00:48)
  • Demo: ASP.NET Membership (14:37)
  • Summary (00:34)
Authorization (32:23)
  • Introduction (00:44)
  • Overview (01:09)
  • Role Based Authorization (00:49)
  • Role Based Security (00:33)
  • Identity (00:41)
  • Principal (00:11)
  • WindowsPrincipal Class (00:49)
  • GenericPrincipal Class (00:36)
  • PrincipalPermission (00:46)
  • Demo: Using Identities (07:22)
  • Demo: Generic Indentity (09:45)
  • ASP.Net Role Provider (00:37)
  • Configure Web Site Security (00:25)
  • Configure Binding and Service (00:45)
  • Demo: ASP.NET Role Provider (06:38)
  • Summary (00:27)

Module 7

Workflow Services (37:39)
  • Introduction (00:55)
  • Windows Workflow Foundation (02:28)
  • Sequential Workflow (01:39)
  • State Machine Workflow (01:11)
  • Workflow Services (00:53)
  • ReceiveActivity (00:52)
  • Authoring Styles (01:52)
  • Hosting Workflow Services (01:49)
  • Demo: Workflow Service (18:14)
  • Demo: Hosting Workflow IIS (07:19)
  • Summary (00:21)
Send Activity (26:20)
  • Introduction (00:34)
  • SendActivity (01:05)
  • Demo: SendActivity (20:24)
  • Demo:Send/ReceiveActivity (03:48)
  • Summary (00:27)

Module 8

Stateful Workflow Services (31:37)
  • Introduction (00:26)
  • Overview (00:49)
  • Using the State Activity (00:37)
  • Using the SetState Activity (00:26)
  • Using the EventDriven Activity (01:08)
  • Workflow Persistence (00:51)
  • SQL Persistence Service (01:52)
  • Demo:StateMachine Workflow (12:43)
  • Demo: Setup Persistence (12:12)
  • Summary (00:28)
Restful Services (31:10)
  • Introduction (00:48)
  • REST (00:20)
  • REST Principles (01:46)
  • Why use REST vs SOAP? (01:58)
  • REST and WCF (00:53)
  • WebGet Attribute (02:08)
  • WebHttpBinding (01:18)
  • WebServiceHost (00:41)
  • Demo: RESTful Service (14:04)
  • Uploading Data (06:44)
  • Summary (00:25)
Syndication (17:45)
  • Introduction (00:44)
  • Overview (00:36)
  • Syndication and WCF (00:54)
  • Syndication Classes (01:36)
  • Demo: Syndication Feed (07:58)
  • Demo: ATOM Feed (01:45)
  • Demo: ATOM and RSS (03:16)
  • Summary (00:54)