Introduction to WCF Using C#

Current Version: 2.0
Summary

Windows Communication Foundation (WCF) is Microsofts new framework for building distributed systems. It unifies and builds on the diverse set of existing distribution mechanisms, which include ASP.NET Web services and .NET Remoting. WCF enables developers to produce highly configurable, secure, reliable and transactional services using a single simplified programming model. And since WCF supports the WS-* series of Web service standards, it enables simple interoperation with other platforms and technologies. This course covers the essentials of the technology and includes a large number of working examples and lab exercises.

The course uses .NET 3.5 and Visual Studio 2008. An earlier version of the course, Rev. 1.1, uses Visual Studio 2005 and is still available.

Prerequisites
  • Prerequisite: Students should have a good working knowledge of building .NET applications with C#. Knowledge of building distributed systems and Web services will also be an advantage.
Course Objectives
On completion of this course, the student should be able to
  • Learn what WCF is, and how it unites existing distribution mechanisms
  • Gain an understanding of what ABC (Address, Binding, Contract) means for WCF services
  • Learn how to implement WCF services and clients
Length
3 Days

Format
Instructor-led course, with practical computer-based exercises.

Course Outline

  • 1. Introduction to WCF
    • What is WCF?
    • Address, Binding and Contract
    • WCF Services and Clients
    • IIS Hosting
    • WCF Architecture

  • 2. Addresses and Bindings
    • Addresses
    • Bindings
    • Message Exchange Patterns
    • Configuring Bindings
    • Interoperating with ASMX Web Services
    • Hosting in a Console Application
    • Channel Factories
    • Multiple Endpoints

  • 3. Service Contracts
    • Defining Service Contracts
    • Defining Operation Contracts
    • Services With Multiple Contracts
    • Contract Inheritance
    • Operation Overloading

  • 4. Instance Management
    • Using Per-Call Services
    • Using Per-Session Services
    • Using Singleton Services
    • Configuring Behaviors

  • 5. Data Contracts
    • Implementing Data Contracts
    • Mapping Data Contracts to XSD Schema
    • Serialization
    • Arrays and Generic Collections
    • Enums
    • Versioning Data Contracts

  • 6. More about Service Contracts
    • Versioning Service Contracts
    • Implementing Message Exchange Patterns
    • Oneway Contracts
    • Duplex Contracts
    • Asynchronous Proxies

  • 7. Handling Errors
    • Faults and Exceptions
    • Generating and Handling Faults
    • Fault Contracts
    • Faults and Sessions

Hardware and Software Requirements

Course exercises require Microsoft .NET 3.5 and Visual Studio 2008 Standard Edition or higher. The preferred operating system is Windows XP Professional with Internet Information Services. See the appropriate course Setup Guide for details.

A good minimal hardware profile for this course consists of a 2 GHz or better CPU, 512 MB of RAM, and at least 4 GB of free disk space for tools installation and courseware.

References


Go to course catalogue