IDesign Windows Communication Foundation (WCF) Master Class
Printer friendly

Course Overview
  Windows Communication Foundation (WCF) is Microsoft's implementation of set industry standards defining service interactions. But fundamentally, WCF is nothing short of the new .NET, a better way of writing applications. The training starts by explaining the motivation for WCF, and then continues to discuss in depth how to develop service-oriented applications using WCF. You will see how to take advantage of built-in features such as service hosting, instance management, asynchronous calls, synchronization, reliability, transaction management, disconnected queued calls, security as well as emerging technologies like cloud computing and the Windows Azure AppFabric service bus. While the training shows how to use these features, it sets the focus on the ‘why’ and the rationale behind particular design decisions, often shedding light on poorly-documented and understood aspects. You will learn not only WCF programming, but also relevant design guidelines, best practices, and pitfalls. The material presented includes IDesign's original techniques and utilities and goes well beyond anything you can find in conventional training sources. The objective of the training is not to just make you a WCF expert, but also a better software engineer.

On top of the frontal presentations, the training uses lab exercises and numerous conceptual demos and original tools and utilities. Attendees will find the demos useful not only in the training class but after it. The demos serve as a starting point for new projects, and as a rich reference and samples source.

About Brian Noyes - Brian Noyes is not only a Chief Architect with IDesign, he is also Microsoft's Regional Director for the Mid-Atlantic region and a Microsoft Most Valuable Professional (MVP), with over 16 years of programming, engineering, and project management experience. Brian specializes in smart client architecture and development, presentation tier technologies including Windows Presentation Foundation, Windows Forms and ASP.NET, workflow, and data access. Brian's latest publication is Developing Applications with Windows Workflow Foundation, a LiveLessons training DVD. Brian's previous two books Smart Client Deployment with ClickOnce and Data Binding with Windows Forms 2.0 continue to be best sellers. Brian continuously publishes articles in a variety of publications and speaks at international conferences and events including Microsoft TechEd US, Europe, and Asia, Visual Studio Connections, DevTeach. Brian is a top-rated speaker on the INETA Speakers Bureau and travels the country frequently speaking to developer user groups. Brian also has long term experience in the government sector, having worked for defense and federal agencies as a software developer and architect and as a government software project manager while on active duty in the Navy. Brian got started with programming to stimulate his brain while flying F-14 Tomcats in the Navy and is a Top Gun and Test Pilot School graduate.

Objectives
  

Audience
  Any .NET developer or architect would benefit greatly from the WCF training. Basic familiarity with C# 3.0 and system programming is recommended.


Prerequisites
  

Course Number
  IDEWCFMaster

Course Length
  5 Days

Course Price
  $3,750.00

Category
  5

Topics
  Introduction to Service-Orientation
  • What are services
  • Service-oriented architecture
  • Service-oriented applications
  • Service-oriented programming
WCF Essentials
  • Addresses
  • Service contracts
  • Hosting and choosing a host
  • Binding
  • Endpoints
  • Default configuration with WCF 4.0
  • Client-side programming
  • WCF architecture
  • Transport session
  • Reliability
Service Contracts
  • Contract overloading
  • Contract inheritance
  • Contract queries and dynamic metadata exchange
Data Contracts
  • Service parameters and serialization
  • Data contracts
  • Data sets and tables conversion
  • Data contract hierarchy
  • Versioning
  • Collections
Headers and Contexts
  • Out-of-band parameters
  • Developing custom contexts
  • Context bindings
Service Instance Management
  • Design for scalability
  • Per-call services
  • Session-full services
  • Session termination
  • Singleton service
  • Durable Services
  • Throttling
Operations
  • Operations and bindings
  • Request-reply operations
  • One-way operations
  • Duplex calls and callbacks
  • Events
  • Publish/Subscribe service
Discovery
  • Why discovery
  • Ad-hoc discovery
  • MEX-enabled discovery
  • Scopes
  • Announcements
  • Discovery factory
  • Pub/sub using discovery
Faults and Errors
  • Fault propagation policies
  • Faults Vs. exceptions
  • Fault contracts
  • Debugging
  • Error handling extension
Transactions
  • Transactions problem space
  • Transaction management and propagation
  • WCF transaction managers
  • Service transaction configuration
  • Declarative and explicit voting
  • Timeout and isolation
  • Explicit transactional programming
  • Transactional behavior and transactional memory
  • Service-state management
Concurrency Management
  • Service thread safety
  • Concurrency modes
  • Callback and reentrancy
  • Resources and services
  • Deadlock avoidance
  • Resource synchronization context
  • UI thread affinity
  • Custom synchronization context
  • Callbacks and client safety
  • Proxy-based async calls
  • Async. Vs synch calls
Queued Services
  • Disconnected services and clients
  • Queued contract
  • Configuration and setup
  • Transactions and queues
  • Instance modes and queued calls
  • Concurrency management
  • Failure handling
  • Design and architecture
  • Response service
  • Queued pub/sub service
  • Queued calls over the Internet
Security
  • Security aspects
  • Transfer security modes
  • Transport security
  • Message security
  • Authentication
  • Authorization
  • WCF security model
  • Identity management
  • Securing Intranet applications
  • Securing Internet applications
  • Business to Business security
  • Anonymous callers
  • IDesign's declarative security
  • Security audits
Windows Azure AppFabric Service Bus
  • What is Windows Azure AppFabric
  • Why a service bus
  • The relay bindings
  • Event publishing and subscription
  • Cloud as interceptor
  • Buffers
  • Compositions and design patterns
  • Service bus authentication
  • End-to-End security
  • IDesign's service bus host, proxy and helper classes