learnWorkflow: about the book

about the book: Pro WF Windows Workflow in .NET 4

I started working with Windows Workflow Foundation (WF) in 2006 during the early beta and Community Technology Preview (CTP) stages. WF became a shipping Microsoft product named .NET Framework 3.0 in November 2006 along with Windows Presentation Foundation (WPF) and Windows Communication Foundation (WCF). I actually started to learn and use all three of these foundations at the same time in my day job.

While I was impressed with the flexibility and capabilities of WPF and WCF, I was somehow inexplicably drawn to Windows Workflow Foundation (WF). WF isn’t just a new way to implement a user interface or a new way to communicate between applications and services. WF represents a completely new way to develop applications. It is declarative, visual, and infinitely flexible. It promotes a model that cleanly separates what to do from when to do it. This separation allows you to change the when without affecting the what. Business logic is implemented as a set of discrete, testable components that are assembled into workflows like building blocks.

Workflow isn’t a new concept. But when Microsoft spends years developing a workflow foundation and provides it to us without cost, it is an event worth noting. Other workflow frameworks exist, but since it is included in the .NET Framework, WF is the de facto standard workflow framework for Windows applications.

This is the third edition of this book. The first two editions targeted the version of WF that shipped with the .NET Framework 3.0 and 3.5, respectively. This book targets the all-new version 4 of WF, which has been completely redesigned and rewritten. If you are using the 3.x version of WF, this is not the book for you—you need my book Pro WF: Windows Workflow in .NET 3.5, also published by Apress.

I originally wrote the first edition of this book because I was excited about WF. I was excited about the opportunities that it held for application developers like us. I’m even more excited today, since Microsoft has listened to the feedback and given us a completely new and greatly improved workflow framework.

My hope is that this book will help you use WF to build an exciting new generation of workflow-enabled applications.

who should read this book

This book is for all .NET developers who want to learn how to use Windows Workflow Foundation version 4 in their own applications. This book is not a primer on .NET or the C# language. To get the most out of the examples that I present in this book, you need a good working knowledge of the .NET Framework. All of the examples are presented in C#, so you should be proficient with C#.

what you need to use this book

To execute the examples presented in this book, you’ll need to install a minimum set of software components on a supported OS. The minimum requirements are the following:

Check with Microsoft for a current list of supported operating systems. The Microsoft .NET Framework Development Center ( http://msdn.microsoft.com/en-us/netframework/default.aspx) is a good starting point to locate any miscellaneous files that you need.

obtaining this book’s source code

I have found that the best way to learn and retain a new skill is through hands-on examples. For this reason, this book contains a lot of example source code. I’ve been frustrated on more than one occasion with technical books that don’t print all of the source code in the book. The code may be available for download, but then you need to have a computer handy while you are reading the book. That doesn’t work well at the beach. So, I’ve made it a point to present all of the code that is necessary to actually build and execute the examples.

When you are ready to execute the example code, you don’t have to enter it yourself. You can download all of the code presented in this book from the Apress site at www.apress.com; go to the Book Resources Source Code section to download the source code. I’ve organized all of the downloadable code into separate folders and Visual Studio solutions for each chapter. I suggest that you use the same approach as you work through the examples in this book.

sample chapter

Apress has made a sample chapter of this book available for download in PDF format. You can obtain this sample chapter from the Apress page for this book.


Changes that were discovered since the initial publication can be found at the Apress site.