Home About Courses Schedule Services Webinars Contact Search

Windows Workflow Foundation Using C#


Duration: 4 Days

Method: Instructor led, Hands-on workshops

Price: $2250.00

Course Code: NE2350


Microsoft’s Windows Workflow Foundation (WF) provides a framework for creating scalable applications consisting of independent program units called activities. WF 4 was a major rewrite of this technology, offering significantly higher performance and making it easier to create and execute workflow applications. WF 4.5 contains new activities, designer capabilities, and a new workflow development model (state machines). It also supports the use of C# expressions in C# workflows. This four-day course covers WF 4.5 and uses Visual Studio 2012, which provides a visual designer for creating workflows.

The course begins with an overview of the concepts of workflow and the programming model provided by WF. The essentials of WF programming are then covered followed by a systematic treatment of the major features of WF, including the Built-In Activity Library. Primitive and control flow activities are discussed, and the alternatives to hosting workflows are covered. Collection and parallel activities are covered. The creation of custom activities, both using the designer and code, is explained. Flowchart and state machine activities are covered. Persistence and bookmarks are discussed. Workflow Services, using Windows Communication Foundation (WCF) is covered. The course concludes with a discussion of debugging, error handling, transactions and compensation.

Numerous programming examples and exercises are provided. The student will receive a complete set of notes and all the programming examples.


Upon successful completion of this course, the student will be able to:

  • Understand the concept of workflow and the architecture of WF
  • Implement workflow applications using WF
  • Use standard activities from the Built-In Activity Library
  • Implement custom activities for workflow applications
  • Provide hosting for workflow applications
  • Implement persistence in workflow applications
  • Implement and consume workflow services
  • Debug workflow applications
  • Handle errors and perform compensation in workflow applications


The student should have programming experience in C# and the .NET Framework and be familiar with the Visual Studio development environment.


  • I. Workflow Foundation Conceptual Overview
    • What is Workflow?
    • Windows Workflow Foundation
    • Workflows
    • Activities
    • A Workflow Business Scenario
    • Workflow Foundation 3
    • Workflow Foundation 4
    • Workflow Foundation 4.5
  • II. Getting Started with WF 4.5
    • Visual Studio Workflow Projects
    • Workflows in Code
    • Workflows in XAML
    • Workflow Designer
    • Sequence
    • Assign
    • Variables, Arguments and Expressions
    • WriteLine
    • Control Flow
  • III. Primitive and Control Flow Activities
    • InvokeMethod
    • Workflow Variables
    • Delay
    • Parallel
    • If
    • While and DoWhile
    • Switch
  • IV. Custom Activities
    • Why Custom Activities?
    • Arguments
    • Activity Class Hierarchy
    • CodeActivity
    • Composing Activities
  • V. Workflow Hosting
    • WorkflowInvoker
    • WorkflowApplication
    • WorkflowApplication Delegates
    • Canceling and Aborting a Workflow
    • Terminating a Workflow
    • Workflows in a Windows Application
    • Workflows in ASP.NET
  • VI. Collection and Parallel Activities
    • Collection Activities
    • ForEach
    • ParallelForEach
    • AsyncActivity
  • VII. More about Custom Activities
    • Waiting for Input
    • Bookmarks
    • NativeActivity
    • Pick
  • VIII. Flowchart and State Machine
    • Flowcharts
    • Flowchart Activity Designers
    • State Machines
    • States and Transitions
    • State Machine Activity Designers
    • Threading Issues
  • IX. Persistence
    • Long-lived Workflows
    • Persistence and Bookmarks
    • Persistence Store in SQL Server
    • PersistableIdle
    • Unloading and Loading
    • Serializing Instance Identification
  • X. Workflow Services
    • What is WCF?
    • Address, Binding and Contract
    • Workflow Services
    • Messaging Activities
    • Exposing a Workflow as a Service
    • Calling a Service from a Workflow
    • Hosting using WorkflowServiceHost
    • Multiple Operations
  • XI. Debugging and Error Handling
    • Breakpoints in Activities
    • Handling Exceptions in the Host
    • Handling Exceptions in the Workflow
    • Transactions
    • Compensation