Overview:
This three-day instructor-led course will provide you with the knowledge and skills to build and configure a Windows Communication Foundation (WCF) solution.
Learning Method:
This course will be presented using a combination of lectures, group discussions and practical exercises. Each student will be provided with a comprehensive set of course notes. This hands-on course combines exercises and practical work to solidify learning.
Who will benefit from this course?
This course is designed for application developers who know how to build and consume Web services in Microsoft .NET Framework 2.0 and how to use the common features of the base class library.
Pre-requisites:
Before attending this course, you should have experience developing applications in .NET in either VB or C#
What can you expect to gain from this course?
After completing this course, you 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 run-time functionality by using behaviours
- 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 Content:
Module 1:Getting Started with Windows Communication Foundation
- This module explains how to build a simple WCF service and client.
- Designing an Application to Be Part of a Service Oriented Architecture
- 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
- Exercise: Creating a Simple Service
- Creating a Simple WCF Service
- Calling the Simple WCF Service
Module 2:Configuring and Hosting WCF Services
- This module explains how to create and configure a WCF service as a managed application and select an appropriate hosting option.
- 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
- Exercise: 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 Service
Module 3:Endpoints and Behaviours
- This module explains how to expose a WCF service over different endpoints and add run-time functionality by using behaviours.
- Exposing WCF Services Over Different Endpoints
- Adding Behaviours to Services and Endpoints
- Interoperating with Non-WCF Web services
- Exercise: Changing Service Endpoints and Behaviours
- Exposing Services by Using Different Bindings
- Adding Metadata Exchange to a Service
- Creating WCF Clients and Services That Interoperate with Non-WCF Web Services
Module 4:Designing and Defining Contracts
- This module explains how to improve debugging capabilities by examining messages and service activity.
- Logging Messages
- Activity Tracing
- Exercise: Message Logging and Activity
- Generating Logging Information for a Service
- Enabling End-to-End Tracing for a Service
Module 5:Designing and Defining Contracts
- This module explains how to define service, operation, and data 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
- Exercise: 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
- This module explains how to add error handling to a WCF application.
- Relating .NET Exceptions to Service-Level Faults
- Using Faults in a Service
- Handling Faults and Exceptions on Clients
- Exercise: Error Handling
- Handling Unexpected Errors in a WCF Service
- Add Fault Handling to a WCF Service and the Service Contract
Module 7:Improving WCF Service Quality
- This module explains how to address service quality issues such as performance, availability, concurrency, and instance management.
- Managing WCF Service Instances
- Managing Concurrency Issues
- Improving WCF Service Quality
- Exercise: Improving WCF Service Quality
- Managing WCF Service Instances
- Managing Concurrency Issues
- Throttling Access to a WCF Service
- Passing Bulk Data between a WCF Client and Service
Module 8:Implementing WCF Security
- This module explains how to implement security in a WCF application.
- Overview of Security in WCF
- Applying Overall Security Requirements to a Binding
- Specifying Required Client and Service Credentials
- Working with Security Information
- Exercise: Protecting a Service
- Applying Security for Internal Network Communication
- Applying Security for Internet Communication
Module 9:Implementing Transactions
- This module explains how to protect data integrity through correct use of transactions.
- Overview of Transactions in a Service-Oriented Application
- Creating Transactional Service Operations
- Enabling the Flow of Transactions from Client to Service
- Exercise: Implementing Transactions for a Service
- Controlling the Flow of a Transaction from Client to Service
- Forcing a Transaction to Start When a Service Operation Is Called