Overview
Course Description
Thank you for reading this post, don't forget to subscribe!This three-day instructor-led course provides participants with the knowledge and skills to develop distributed applications using WCF 4 and Microsoft® Visual Studio® 2010. Important Note: Course 10263A is designed for experienced .NET developers who are interested in becoming Technology Specialists in the area of WCF application development (see intended audience and prerequisites in this syllabus). For classrooms that include less experienced students, instructors may choose to adjust the course timings and establish a slower pace through the training material. To deliver this course at a reduced pace, Microsoft Learning suggests teaching Modules 1-7 during the three days of classroom training and leaving module 8 for the students to explore on their own after the course is completed. This will enable the instructor to spend more time ensuring that students fully understand the concepts taught in the earlier modules. Learning Partners may also choose to extend the course materials and establish a 4-day customized training course that progresses at a slower pace.
Audience Profile
This course is intended for professional .NET programmers who use Microsoft® Visual Studio® in a team-based, medium-sized to large development environment. Students should have experience consuming services within their Web and/or Windows® client applications and be interested in learning to develop service-oriented applications (SOA) using WCF. Students should be experienced users of Microsoft® Visual Studio® 2008 SP1, as well as cursory familiarity with Microsoft® Visual Studio® 2010 for Windows® client or Web application development.
Prerequisite(s) Recommended
Before attending this course, students must have:
- Understanding of the problem-solving techniques that apply to software development.
- General understanding of the purpose, function, and features of the .NET Framework.
- Experience developing software using Visual Studio® 2008 or Visual Studio® 2010.
- Experience in object-oriented design and development using the C# programming language.
- Experience in n-tier application design and development.
Learning Objectives
After completing this course, students will be able to:
- Implement Service-Oriented Architecture tenets in WCF services
- Host WCF services in a variety of Windows® hosts
- Define and implement WCF service contracts, data contracts, and message contracts
- Use multiple endpoints with various messaging patterns
- Test, troubleshoot, monitor, and diagnose WCF services
- Ensure service reliability using transactions and message queues
- Secure WCF services using message and transport security
- Extend WCF using behaviors, dispatchers, inspectors, and formatters.
Course Outline
Course Outline
Module 1: Service-Oriented Architecture
This module explains how to design SOAs, how to adhere to SOA tenets, and how to leverage the benefits of SOA scenarios using WCF.
Lessons
- What Is SOA?
- The Benefits of SOA
- Scenarios and Standards
- Introduction to WCF
Lab : Service-Oriented Architecture
After completing this module, students will be able to:
- Describe SOA tenets, scenarios, and benefits for distributed application development
- Design SOA-enabled applications
- Map SOA tenets to equivalent WCF concepts
Module 2: Getting Started with Microsoft Windows Communication Foundation Development
This module describes how to implement a WCF service from the beginning, including defining a contract, implementing the contract, hosting the service, configuring endpoints, and configuring bindings. It also explains how to create a proxy to a WCF service using a channel factory, and using the Add Service Reference dialog box in Visual Studio 2010.
Lessons
- Service Contract and Implementation
- Hosting WCF Services
- WCF Behaviors
- Consuming WCF Services
Lab : Service Development Life Cycle
After completing this module, students will be able to:
- Design and define service contracts and data contracts for a service
- Write a service implementation class that implements the service contract
- Host WCF services using a variety of endpoints and bindings
- Consume WCF services using client proxies
Module 3: Hosting Microsoft Windows Communication Foundation Services
This module explains how to host WCF services using Windows Services, Internet Information Services (IIS) and Windows Process Activation Service (WAS), and Windows Server AppFabric. This module describes how to choose the appropriate host, and how to configure it properly for your service’s optimal operation.
Lessons
- WCF Service Hosts
- ServiceHost
- Hosting WCF Services in Windows Services
- IIS, WAS, and AppFabric
- Configuring WCF Hosts
- Service Hosting Best Practices
Lab : Hosting WCF Services
After completing this module, students will be able to:
- Appreciate and compare different WCF service hosts
- Configure service hosts for optimal service operation
- Host WCF services in Windows Services
- Host WCF services in IIS, WAS, and AppFabric
Module 4: Defining and Implementing Microsoft Windows Communication Foundation Contracts
This module describes how to define WCF service contracts, data contracts, and message contracts. This module explains how to design WCF contracts appropriately, and how to modify WCF contracts according to the selected messaging pattern.
Lessons
- What Is a Contract?
- Contract Types
- Messaging Patterns
- Designing WCF Contracts
Lab : Contract Design and Implementation
After completing this module, students will be able to:
- Design and implement WCF service contracts, data contracts, and message contracts
- Choose the appropriate message exchange pattern
Module 5: Endpoints and Behaviors
This module describes how to expose multiple endpoints from a WCF service, how to automatically discover services and make services discoverable, how to configure instancing and concurrency modes for services, and how to improve service reliability with transactions and message queues.
Lessons
- Multiple Endpoints and Interoperability
- WCF Discovery
- WCF Default Endpoints
- Instancing and Concurrency
- Reliability
Lab : WCF Endpoints and Behaviors
After completing this module, students will be able to:
- Improve service reliability by using transactions, queues, and reliable messaging
- Choose between the various concurrency and instancing modes and configure them
- Expose discoverable services and discover services using WS-Discovery
Module 6: Testing and Troubleshooting Microsoft Windows Communication Foundation Services
This module describes how to diagnose errors and problem root causes in WCF services, and how to configure services to expose fault information. It also explains how to use tracing, message logging, and other diagnostic and governance tools for monitoring services at runtime.
Lessons
- Errors and Symptoms
- WCF Faults
- Debugging and Diagnostics Tools
- Runtime Governance
Lab : Testing and Troubleshooting WCF Services
After completing this module, students will be able to:
- Diagnose service errors and symptoms
- Expose fault information from WCF services and consume faults from client applications
- Use debugging and diagnostics tools for service monitoring and troubleshooting
- Appreciate the importance of runtime governance
Module 7: Security
This module explains how to design secure applications, how to implement WCF security on both the message level and the transport level, how to integrate authentication and authorization into service code, and how to apply claim-based identity management in federated scenarios.
Lessons
- Introduction to Application Security
- The WCF Security Model
- Transport and Message Security
- Authentication and Authorization
- Claim-Based Identity
Lab : Implementing WCF Security
After completing this module, students will be able to:
- Appreciate the application security tenets
- Apply message and transport security to WCF services
- Use built-in and custom authentication and authorization providers
- Integrate claim-based identity into distributed systems
Module 8: Introduction to Advanced Microsoft Windows Communication Foundation Topics
This module explains how to improve service throughput and responsiveness using the asynchronous invocation pattern, and how to extend WCF services using inspectors, behaviors, and host extensions. It also describes how to use the WCF routing service for improving service reliability, and how to use Workflow Services to orchestrate long-running, durable, service work.
Lessons
The Asynchronous Invocation Pattern
- Extending WCF
- Routing
- Workflow Services
Lab : Advanced Topics
After completing this module, students will be able to:
- Apply the asynchronous invocation pattern to improve service and client performance
- Extend WCF using behaviors, inspectors, and host extensions
- Use the WCF routing service to balance load and mask service failures
- Use Workflow Services to implement long-running durable services.