.NET Development & Visual Studio // 6461

Visual Studio 2008 and 2010 Windows Communication Foundation

Create the next generation of distributed applications with the latest version of the .NET Framework.

Course Description

Microsoft course 6461 is a three-day instructor-led course that provides students with the knowledge and skills to build and configure a Windows Communication Foundation (WCF) solution. All classes using Visual Studio 2008 will include a sneak preview of the new and enhanced features in Visual Studio 2010 and .NET Framework 4. All student workstations will also have Visual Studio 2010 fully installed!


This course is intended for application developers who know how to build and consume Web services in .NET 2.0 and how to use the common features of the base class library. The application developers do not have to understand concepts such advanced WS-*, WSE, service lifecycle management, and diagnostics.


Before attending this course, students should have intermediate experience developing applications by using previous versions of Microsoft Visual Studio at level 200.

What You Will Learn

After completing this course, students will be able to:
  • Build a simple WCF service and client.
  • Create and configure a service as a managed application and select an appropriate hosting option.
  • Expose a WCF service over different endpoints and add runtime functionality using behaviors.
  • Improve debugging capabilities by examining messages and service activity.
  • Define service, operation, and data contracts to meet application requirements.
  • Add error handling to a WCF application.
  • Address service quality issues such as performance, availability, concurrency, and instance management.
  • Implement security in a WCF application.
  • Protect data integrity through correct use of transactions.

Course Outline

1. Getting Started with Windows Communication Foundation
  • Designing an Application to be Part of a Service Oriented Architecture (SOA)
  • Overview of WCF Architecture
  • Using a Language-Level Interface As a Service Contract
  • Implementing a Simple WCF Service in Visual Studio 2008
  • Consuming a simple WCF service in Visual Studio 2008

    Lab: Creating a Simple Service
    Creating a Simple WCF Service
    Calling the Simple WCF Service
2. Configuring and Hosting WCF Services
  • Programmatically Configuring a Managed Application to Host a WCF Service
  • Programmatically Configuring a Managed Application to Call a WCF Service
  • Defining Client and Service Settings by Using File-Based Configuration
  • Selecting a Hosting Option for a WCF Service
  • Deploying a WCF Service

    Lab: Configure and Host a WCF Service
    Creating a Programmatically Configured Managed Application to Host a Service
    Calling a Service Hosted in a Managed Application by Using Programmatic Configuration
    Defining Service Settings by Using External Configuration
    Employing Different Hosting Options for a Servic
3. Endpoints and Behaviors
  • Exposing WCF Services Over Different Endpoints
  • Adding Behaviors to Services and Endpoints
  • Interoperating with Non-WCF Web services

    Lab: Changing Service Endpoints and Behaviors
    Exposing Services by Using Different Bindings
    Adding Metadata Exchange to a Service
    Creating WCF Clients and Services That Interoperate with Non-WCF Web Services
4. Debugging and Diagnostics
  • Logging WCF messages
  • Trace WCF service activity

    Lab: Message Logging and Activity
    Generating Logging Information for a Service
    Enabling End-to-End Tracing for a Service
5. Designing and Defining Contracts to Meet Application Requirements
  • Designing a Coherent and Cohesive WCF Service Interface
  • Defining a Service Contract
  • Defining Operations on a Service
  • Defining a Data Contract

    Lab: Contracts for Services and Data
    Defining and Implementing a One-way Operation Contract
    Passing Complex Data with a Data Contract
    Defining and Implementing a Callback Contract
6. Handling Errors
  • Relating .NET Exceptions to Service-level Faults
  • Using Faults in a Service
  • Handling Faults and Exceptions on Clients
    Lab: Error Handling
    Handling Unexpected Errors in a WCF Service
    Add Fault Handling to a WCF Service and the Service Contract
7. Improving WCF Service Quality
  • Managing WCF Service Instances
  • Managing Concurrency Issues
  • Improving WCF Service Performance

    Lab: Improving WCF Service Quality
    Managing WCF Service Instances
    Managing Concurrency Issues
    Throttling Access to a WCF Service
    Passing Bulk Data Between WCF Client and Service
8. Implementing WCF Security
  • Overview of Security in WCF
  • Applying Overall Security Requirements to a Binding
  • Specifying Required Client and Service Credentials
  • Working With Security Information
    Lab: Implementing WCF Security
    Applying Security for Internal Network Communication
    Applying Security for Internet Communication

9. Implementing Transactions

  • Overview of Transactions in a Service-Oriented Application
  • Creating Transactional Service Operations
  • Enabling the Flow of Transactions from Client to Service
    Lab: Implementing Transactions for a Service
    Control the Flow of a Transaction from Client to Service
    Force a Transaction to Start When a Service Operation Is Called