|
|
|
|
.NET Training Overview
Windows Communication Foundation (WCF) is Microsoft’s new framework for building distributed systems. It unifies and builds on the diverse set of existing distribution mechanisms, which include ASP.NET Web services and .NET Remoting. WCF enables developers to produce highly configurable, secure, reliable and transactional services using a single simplified programming model. And since WCF supports the WS-* series of Web service standards, it enables simple interoperation with other platforms and technologies.
This course provides a thorough grounding in this important technology. The first chapter covers the essential concepts and shows how to implement WCF services and clients. The “ABC” of address, binding and contracts are covered in detail. Service contracts and data contracts are elaborated, and instance management is covered. The course includes a discussion of error handling and security and concludes with coverage of the WCF Routing Service. The course uses Visual Studio 2017 with .NET 4.6.1. The course discusses new features of WCF 4.5, including new bindings and support for the task-based asynchronous pattern and WebSockets. A large number of working examples and lab exercises are provided.
.Net Training Learning Objectives
After completing this course, the student should be able to:
- Learn what WCF is, and how it unites existing distribution mechanisms
- Gain an understanding of addressing and binding in WCF services
- Use service contracts and data contracts
- Implement WCF services and clients
- Perform configuration in both code and configuration files
- Understand faults and handle errors in WCF applications
- Implement security in WCF applications
- Understand the WCF Routing Service
.NET Training Prerequisites
Students should have a good working knowledge of building .NET applications with C#. Knowledge of building distributed systems and Web services will also be an advantage.
.NET Training Course duration
3 days
.NET Training Course outline
1. WCF Essentials
- What is WCF?
- WCF and Web API
- Address, Binding and Contract
- WCF Services and Clients
- WCF Service Libraries
- WCF Test Host and Test Client
- Self-Hosting
- WCF Clients
- Channel Factories
- Creating Proxies
- Configuration Files
- Metadata
- Standard Endpoints
- WCF Architecture
2. Addresses and Bindings
- Addresses
- Bindings
- Message Exchange Patterns
- Configuring Bindings
- Interoperating with ASMX Web Services
- Default Endpoints and Bindings
- Service Descriptions
- Multiple Endpoints
3. Service Contracts
- Defining Service Contracts
- Defining Operation Contracts
- Services with Multiple Contracts
- Contract Inheritance
- Operation Overloading
4. Instance Management
- Using Per-Call Services
- Using Per-Session Services
- Using Singleton Services
- Configuring Behaviors
- Windows Forms WCF Clients
5. Data Contracts
- Implementing Data Contracts
- Mapping Data Contracts to XSD Schema
- Serialization
- Arrays and Generic Collections
- Enums
- Versioning Data Contracts
6. More about Service Contracts
- Versioning Service Contracts
- Implementing Message Exchange Patterns
- Oneway Contracts
- Duplex Contracts
- Asynchronous Proxies
- Task-Based Asynchronous Pattern
- WebSockets
7. Handling Errors
- Faults and Exceptions
- Generating and Handling Faults
- Fault Contracts
- Faults and Sessions
8. WCF Security
- Security Aspects of Services
- Transport Security
- Message Security
- Certificates
- Credentials
9. WCF Routing
- WCF Routing Service
- Routing Configuration
- Routing Contracts
- Message Filters
- Error Handling
- Routing Scenarios
Appendix A. Learning Resources
Appendix B. Hosting in IIS 7.5
- Installing IIS 7.5
- IIS Manager
- An IIS Hosted Service
System Requirements
Required software is Visual Studio 2017. The free Visual Studio Community 2017 may be used. The operating system should be Windows 7sp1. See the appropriate course Setup Guide for details.
A good minimal hardware profile for this course would have a 2 GHz or better CPU, 2 GB of RAM (4 GB recommended), and at least 10 GB of free disk space for tools installation and courseware.
|
|
|
|
|