Hands-On Technology Transfer
presents
WCF Programming for Experienced C# Programmers On-Site Training
This course provides students with hands on experience using Visual Studio to create service-oriented applications using Windows Communication Foundation (WCF) and C#
Course Description/Agenda
This course provides students with hands on experience using Visual Studio to
create service-oriented applications using Windows Communication Foundation
(WCF) and C#. Students learn how to leverage the power of the .NET Framework to
build Web Service applications that interoperate with consumer applications
including other platforms and technologies. Students will learn how to configure
addresses, bindings, and service and data contracts as well as how to use
various techniques for developing endpoints to allow communication between
consumer applications and the web services provider.
The course includes coverage of instance management, fault handling, and
security. Students will learn how to use the WCF Routing Service for load
balancing, content-based routing, and protocol bridging.
Comprehensive labs and exercises provide the students with experience
creating both content server and consumer applications.
This course provides thorough coverage of the use of Windows
Communication Foundation for service-oriented applications. Students
requiring additional coverage of ASP.NET Web Forms,
Windows Forms or Windows Presentation Foundation
should contact HOTT or refer to HOTT's
complete course listing for additional training courses.
Students unfamiliar with the C# programming language should register for the
5-day WCF Programming Using C# course instead.
Course Prerequisites: Knowledge of fundamental HTML syntax
is helpful, but not required. Prior experience with C# is required.
What Students Will Learn
- SOA Benefits
- WCF Architecture
- Building Service Contracts
- Working with Data Contracts
- WCF Security Options
- Hosting WCF Services
- Choosing WCF Bindings
- Managing Service Instances
- Fault Handling
- WCF Routing Control
Course Overview
Introduction to WCF
- WCF Web Services Architecture
- Addresses, Bindings and Contracts
- WCF Service Libraries
- WCF Test Host and Test Client
- ChannelFactory Class
- Configuring WCF Clients
- Standard Endpoints
Service Addresses
- Address Types
- Endpoint Address
- Base Address
- MEX (Message Exchange) Address
- Metadata Exchange
- Address Formats
Selecting Binding Options
- Binding Selection
- HTTP Bindings
- TCP and Named Pipe Bindings
- MSMQ Binding
- BasicHttpBinding Class
Managing a Service Instance
- Configuring Behaviors
- Service Instance Models
- Per-Call
- Per-Session
- Singleton
- Threading Considerations
- Consuming WCF Application Services with .NET Applications
- Consuming WCF Application Services on foreign platforms
Defining Service Contracts
- Service and Operation Contracts
- Creating Contracts at the Class and Interface Level
- Using ServiceContractAttribute
- Types of Service Contracts
- Oneway
- Request-Reply
- Duplex
- Callbacks
- Asynchronous Proxies
- WSDL Files
- Contract Inheritance and Overloading
- Implementing Message Exchange Patterns
- Versioning
Defining Data Contracts
- Using DataContractAttribute
- Mapping Data to Schema
- Returning Arrays
- Returning Generic Collections
- Data Serialization
- Versioning
Endpoints
- Endpoints Explained
- Working with Endpoints
- Configuring Endpoints
- Using Multiple Endpoints
Fault Handling
- FaultException class
- FaultCode class
- FaultContract class
- Client Exception Handling
- Including Exception Details
Securing WCF Applications
- Security Issues with Services
- Types of Security
- Transfer Security
- Transport Security
- Message Security
- Configuring Security on Client and Server
- Managing Certificates
- Configuring Client Certificates
- Sending Credentials
WCF Routing Configuration
- WCF Routing Service
- Hosting the Service
- Consuming the Service
- Service Contract and Implementation
- Routing Contracts
- Message Filters
- Common Routing Scenarios
- Load Balancing
- Content Based Routing
- Service Partitioning
- Protocol Bridging
|