Demo’s from my WWF sessions at Developer Days available for download

As promised, I posted the demo’s I used for my Windows Workflow Foundation track at developer days. You can download them here.


 


Below you can find a description of the demo’s you find in the zipfile.


Demos for presentation WF01: Introduction to Windows Workflow Foundation (WF001)


01-Workflow101:


This is the first workflow created with the if/else construct and a code condition that evaluates to true so the if branch is executed. The sample here does work as opposed to the demo I gave J


02-WSWorkflow:


This folder contains the demonstration on creating a web service that is constructed out of two calls to other web services. (In the BackoficeWebservices folder) You can play around and try to create the same effect by using a parallel activity in stead of the sequence I used.


03-TxDemo:


This folder contains the demo I gave on transactional behavior and Long Running activities and Compensation. I added a Readme.txt file to the folder. Read this carefully, because you need to set up the database correctly and download or install the SQL activity for the demo to work.


 


 


Demos for presentation WF02: Hosting and Communication with WWF (WF002)


01-Events:


This demo shows the event fired by the Runtime for Runtime and Workflow events.


02-events and persistence:


This demo shows how to add the persistence service to the runtime and how this affects the behavior of the workflow with new events. Please read the readme file in the folder on how to set up the persistence store.


03-SchedulerService(sdk):


This shows the different threading models used by the scheduler services that are available to you. You can learn from that on what effect scheduling can have on your workflow behavior and performance. This sample is borrowed from the SDK. If you follow the documentation link in the folder, it will redirect you to the online help on scheduling services.


04-Communication:


This shows you how you need to set up a ExternalDataExchange service to communicate with workflow instances to the host and vice versa.


 


 


Demos for presentation WF03: Building Custom activities for WWF (WF003)


01-SendMailActivty(sdk):


This shows how to build a custom activity to send email. This demo requires a SMTP server in your network. The default settings assume a SMTP server at localhost.


This sample is also from the SDK


02-CompositeExecution:


This shows you how you need to apply a coding pattern for executing child activities when you create a custom composite activity.


03-Tracking:


This demo shows you how to add custom track records to an activity. This is done at the most simplistic way using the default tracking profiles.


04-CompensatingActivity:


This demo shows you how you can create activities that support compensations. This simple demo shows how the Email Activity from the previous demo’s can altered to support compensation by resending the email with an excuse message why things are broken. This is obviously not the best way to do compensation, but it just shows you in a very simplistic fashion what compensation means and how to implement this.


05-FileWatcher(sdk):


This shows you how you can implement the famous BizTalk demo with Windows workflow foundation where a workflow (in the BizTalk scenario called an orchestration) waits on a file to arrive at the file system and perform actions based on these events. It very clearly shows you how to interact with the message queues to enqueue work for the workflow engine to pick up and process.


 


Demos for presentation WF04: Building State machine Workflows with WWF (WF004)


01-SimpleBugWF:


This shows a simplistic version of the Bug Workflow presented at the session. It also shows you how to query the runtime on the running workflow instances and how to obtain additional information on current workflow state.


02-POSample(sdk):


This sample shows you how to implement the Purchase Order system discussed at the session. You can also use this sample to experiment with Recursive composition. Read the Readme.txt file for more info for the steps involved.