Windows Communication Foundation (M6461)
In this instructor-led course, students will gain the knowledge and skills to build and configure a Windows Communication Foundation (WCF) solution.
This course incorporates material from the Official Microsoft Learning Product (OMLP) 6461: Windows Communication Foundation.
What You'll Learn
- 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 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
Who Needs to Attend
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.
Prerequisites
- Intermediate experience developing applications using previous versions of Microsoft Visual Studio development system at level 200
- Understanding of advanced WS-*concepts, Web Services Enhancements (WSE), service life cycle management, and diagnostics isn't necessary.
Follow-On Courses
There are no follow-ons for this course.
Course Outline
1. Getting Started with Windows Communication Foundation
- 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
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 Using File-Based Configuration
- Selecting a Hosting Option for a WCF Service
- Deploying a WCF Service
3. Endpoints and Behaviors
- Exposing WCF Services Over Different Endpoints
- Adding Behaviors to Services and Endpoints
- Interoperating with Non-WCF Web Services
4. Debugging and Diagnostics
- Logging Messages
- Activity Tracing
5. Designing and Defining Contracts
- Designing a Coherent and Cohesive WCF Service Interface
- Defining a Service Contract
- Defining Operations on a Service
- Defining a Data Contract
6. Handling Errors
- Relating .NET Exceptions to Service-Level Faults
- Using Faults in a Service
- Handling Faults and Exceptions on Clients
7. Improving WCF Service Quality
- Managing WCF Service Instances
- Managing Concurrency Issues
- Improving WCF Service Quality
8. Implementing WCF Security
- Security in WCF
- Applying Overall Security Requirements to a Binding
- Specifying Required Client and Service Credentials
- Working With Security Information
9. Implementing Transactions
- Transactions in a Service-Oriented Application
- Creating Transactional Service Operations
- Enabling the Flow of Transactions from Client to Service
Labs
Lab 1: Creating a Simple Service
- Creating a Simple WCF Service
- Calling the Simple WCF Service
Lab 2: Configure and Host a WCF Service
- Creating a Programmatically Configured Managed Application to Host a Service
- Calling a Service Hosted in a Managed Application Using Programmatic Configuration
- Defining Service Settings Using External Configuration
- Employing Different Hosting Options for a Service
Lab 3: 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
Lab 4: Message Logging and Activity
- Generating Logging Information for a Service
- Enabling End-to-End Tracing for a Service
Lab 5: 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
Lab 6: Error Handling
- Handling Unexpected Errors in a WCF Service
- Add Fault Handling to a WCF Service and the Service Contract
Lab 7: 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
Lab 8: Protecting a Service
- Applying Security for Internal Network Communication
- Applying Security for Internet Communication
Lab 9: 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
United States [
