Book Image

Microsoft Windows Workflow Foundation 4.0 Cookbook

By : Andrew Zhu
Book Image

Microsoft Windows Workflow Foundation 4.0 Cookbook

By: Andrew Zhu

Overview of this book

Windows Workflow Foundation 4.0 (WF) is a significant part of .NET Framework 4.0. WF makes workflow technology available to every single programmer that uses the .NET Framework 4.0. It is easy to create long running and distributed programs using WF with the right knowledge. With this book, you will discover that working with workflows is easy. This book provides both step-by-step recipes and relevant background information. It covers all the important aspects of Windows Workflow Foundation 4.0. The best thing about this book is that all recipes are based on real-world experiences of Andrew Zhu. Andrew is a global WF and BizTalk technology support engineer for Microsoft. This book covers everything you need to know, when working with workflows. Get to grips with flow control activities, messaging, and transaction processes with easy to understand steps followed by explanations. You will quickly learn to use collection and custom WF activities and WF services.You will see recipes that illustrate integration of Windows Workflow with other applications such as WPF, ASP.NET, WCF service.Lastly, you will discover how easily you can customize W4 Designer with WF rule engine and others.
Table of Contents (15 chapters)
Microsoft Windows Workflow Foundation 4.0 Cookbook
Credits
About the Author
About the Reviewers
Foreword
Preface
Index

Performing a transaction by using TransactionScope activity


In this task, we will create a workflow with TransactionScope activity, in which a customized activity will insert some data in the database. If any exception/error occurs, the newly inserted data will be rolled back.

How to do it...

  1. Create a Workflow Console Application:

    Create a new Workflow Console Application and name it UseTransactionScope.

  2. Create a database for testing:

    Create a new database in SQL Server (or SQL Server Express) and name it TransactionDB. Use the following SQL statement to create a new table:

    create table UserTable(
    	UserID nvarchar(50) primary key
    )
  3. Add references to the project:

    Add a reference to the System.Tranactions namespace because we are going to use IsolationLevel enumeration in our code.

  4. Create InsertDataToDBActivity code:

    Add a new class file to the project and name it InsertDataToDBActivity.cs. By using this activity, we can insert a row of data into the database that has been created in advance...