About the course
Windows Communication Foundation (WCF) served as Microsoft's primary framework for building service-oriented applications and enabling inter-process communication across various platforms within the .NET ecosystem for many years. While newer technologies like gRPC and ASP.NET Core REST APIs are the standard for modern development, a substantial number of existing enterprise applications continue to rely heavily on WCF services for their distributed communication needs. This training course is specifically designed for software developers, architects, and administrators who are tasked with understanding, maintaining, extending, troubleshooting, and potentially interacting with these existing WCF applications built on the .NET Framework.
The course provides a comprehensive deep dive into the essential concepts and features of WCF. Participants will start with the fundamental building blocks: understanding what WCF is, the role of Services, Addresses, and Contracts, different Hosting options for WCF services, and how Metadata Exchange facilitates client-side programming and service discovery. A significant portion covers key architectural elements, including designing Service Contracts (exploring concepts like operation overloading and contract inheritance/queries), defining robust Data Contracts for reliable serialization of information (understanding attributes, hierarchy, equivalence, versioning, and generics), and managing the lifecycle and state of service instances using different Instance Management modes (Per-call, Per-session, Singleton) and Service Behaviours.
Furthermore, the course delves into handling various communication patterns by exploring different Operation types (Request-Reply, One-Way, Callback, Streaming) and implementing robust error handling and fault propagation using WCF Faults. Key operational aspects are covered, including working with Transactions for reliable operations across service calls, managing Concurrency within services for performance and scalability, applying essential Security concepts (Authentication, Authorization, Transfer Security, ID Management, Auditing), and understanding WCF interaction patterns with supporting technologies like Queued Services and Service Bus solutions (such as the historical Azure AppFabric Bus context mentioned in the outline). By the end of this course, attendees will have a solid understanding of the WCF architecture and its core capabilities, enabling them to effectively support and work with existing WCF-based systems.
Instructor-led online and in-house face-to-face options are available - as part of a wider customised training programme, or as a standalone workshop, on-site at your offices or at one of many flexible meeting spaces in the UK and around the World.
-
- Explain the fundamental concepts of WCF: Services, Addresses, Contracts, Hosting models, and Metadata Exchange.
- Understand and perform Client-Side Programming to consume existing WCF services.
- Design and implement WCF Service Contracts, including understanding operation overloading, contract inheritance, and queries.
- Define and manage WCF Data Contracts, understanding serialization, attributes, hierarchy, equivalence, versioning, and generics.
- Understand and implement various WCF Operation types: Request-Reply, One-Way, Callback, and Streaming.
- Manage service instances using different Instance Management behaviours (Per-call, Per-session, Singleton) and control service operations through Behaviours.
- Implement error handling and fault propagation using WCF Faults.
- Work with WCF Transactions, understanding propagation, protocols, managers, and transactional service programming.
- Manage service concurrency using different Service Concurrent Modes and understand synchronization techniques.
- Apply WCF Security concepts, including Authentication, Authorization, Transfer Security, ID Management, and Auditing.
- Understand the basics of Queued Services and WCF interaction patterns with Service Bus technologies.
-
This training course is designed for IT professionals who need to work with existing applications built using Windows Communication Foundation (WCF). It is ideal for:
Software Developers tasked with maintaining, enhancing, or troubleshooting existing WCF services and clients.
Architects evaluating existing systems or planning interactions with legacy WCF endpoints.
System Administrators or DevOps engineers supporting infrastructure hosting WCF applications.
Developers needing to understand how to consume existing WCF services from newer technologies.
-
Participants should ideally have:
Experience developing applications using the Microsoft .NET Framework.
A basic understanding of distributed systems and service-oriented concepts.
Familiarity with XML and SOAP concepts (helpful but not mandatory).
-
This WCF course is available for private / custom delivery for your team - as an in-house face-to-face workshop at your location of choice, or as online instructor-led training via MS Teams (or your own preferred platform).
Get in touch to find out how we can deliver tailored training which focuses on your project requirements and learning goals.
-
WCF Essentials
What is WCF?
Services
Addresses
Contracts
Hosting
Metadata Exchange
Client-Side Programming
Architecture
Service Contracts
Operation Overloading
Contract Inheritance
Contract Queries
Data Contracts
Serialisation
Attributes
Hierarchy
Equivalance
Versioning
Generics
Instance Management
Behaviours
Per-call Services
Per-session Services
Singleton Service
Instance Deactivation
Durable Services
Operations
Request-Reply
One-Way
Callback
Events
Streaming
Faults
Fault Propagation
Error Handling
Transactions
Propagation
Protocols and Managers
Transactional Service Programming
Callbacks
Concurrency Management
Instance Management
Service Concurrent Modes
Concurrent Access
Resources and Services
Synchronization
Queued Services
Calls
Transactions
Instance Management
Failures
HTTP Bridge
Security
Authentication and Authorisation
Transfer Security
ID Management
Intranet and Internet Application
Auditing
Service Bus
Azure AppFabric Bus
Programming
Bindings
Cloud as Interceptor
Authentication
-
Windows Communication Foundation Documentation (.NET Framework): The official documentation for WCF as included in the .NET Framework.
CoreWCF Documentation: Documentation for the open-source port of WCF server-side capabilities to modern .NET. Useful if considering migration or understanding differences.
Introduction to SOAP: Conceptual overview of the Simple Object Access Protocol.
Introduction to WSDL: Conceptual overview of the Web Services Description Language.
XML Tutorial: Basic introduction to XML syntax and concepts.
Overview of Distributed Systems Concepts: Provides broader context on the principles behind distributed applications.
WCF Samples (.NET Framework): Code samples illustrating various WCF features.
Trusted by