Developing Windows® Communication Foundation Solutions with Microsoft® Visual Studio® 2010 (10263A)
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.
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.
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.
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
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.
- What Is SOA?
- The Benefits of SOA
- Scenarios and Standards
- Introduction to WCF
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.
- Service Contract and Implementation
- Hosting WCF Services
- WCF Behaviors
- Consuming WCF Services
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.
- WCF Service Hosts
- Hosting WCF Services in Windows Services
- IIS, WAS, and AppFabric
- Configuring WCF Hosts
- Service Hosting Best Practices
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.
- What Is a Contract?
- Contract Types
- Messaging Patterns
- Designing WCF Contracts
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.
- Multiple Endpoints and Interoperability
- WCF Discovery
- WCF Default Endpoints
- Instancing and Concurrency
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.
- Errors and Symptoms
- WCF Faults
- Debugging and Diagnostics Tools
- 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.
- Introduction to Application Security
- The WCF Security Model
- Transport and Message Security
- Authentication and Authorization
- Claim-Based Identity
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.
- The Asynchronous Invocation Pattern
- Extending WCF
- Workflow Services