WCF Development

Windows Communication Foundation (WCF) is Microsoft's strategic vision for creating distributed applications in the Service Oriented Architecture (SOA) era. This course provides comprehensive coverage of WCF, explaining how to implement best-of-breed SOA solutions using the latest techniques and APIs.

Duration

4 days

 

Prerequisites

  • Solid C# experience
  • Familiarity with Web services would be an advantage

What you'll learn

  • Essential WCF concepts
  • Defining service, data, and fault contracts
  • Defining endpoints and behaviours
  • Implementing discovery
  • Implementing routing
  • Managing concurrency, transactions, and seucrity
  • Creating and consuming RESTful services

Course details

Introduction to WCF

  • Overview of SOA
  • WCF architecture
  • Services, contracts, and addresses
  • Hosting
  • Bindings
  • Endpoints
  • Metadata exchange
  • Configuration
  • Implementing and consuming a service

Defining Service Contracts

  • Mapping operations to methods
  • Overloading operations
  • Using inheritance
  • Best practices
  • Querying contracts
  • Message contracts
  • Implementing catch-all contracts
  • Contract-first development in WCF 4.5
  • Task-based async proxies in WCF 4.5

Defining Data Contracts

  • Overview of data contracts
  • Serialization issues
  • Using data contract attributes
  • Versioning data contracts
  • Using data sets and tables
  • Using collections and generics

Defining Endpoints and Behaviors

  • Defining multiple endpoints
  • Adding behaviors to services and endpoints
  • Calling non-WCF services
  • Managing service instances

Handling Faults

  • Overview of service-level faults
  • Defining fault contracts
  • Handling exceptions at the client

Discovery

  • Overview of WS-Discovery
  • Simple ad-hoc service discovery
  • Using scope when discovering endpoints
  • Service announcements

Routing

  • Overview of RoutingService
  • Hosting the RoutingService
  • Configuring the RoutingService with message filters
  • Content-based routing
  • Protocol bridging
  • Error handling
  • Multicast routing

Managing Operations and Concurrency

  • Message exchange patterns (MEPs)
  • Defining synchronous request-reply operations
  • Defining one-way operations
  • Defining asynchronous call-back operations
  • Service synchronization
  • Managing events
  • Streaming improvements in WCF 4.5

Managing Transactions

  • The role of transactions in SOA
  • Implementing transactional operations
  • Transaction management and propagation

Managing Security

  • Security concepts
  • Binding security
  • Specifying credentials
  • Obtaining security information
  • Application scenarios

RESTful Services

  • Overview of REST
  • REST bindings in WCF
  • Implementing RESTful services
  • Consuming RESTful services using HttpClient in WCF 4.5

Workflow Services

  • The role of WF in WCF
  • Creating and hosting a workflow service
  • Using workflow activities

Web Sockets

  • Overview of Web Sockets
  • Implementing Web Sockets using WCF 4.5
  • Consuming WCF services