Workflow Services and Durable Services Overview

Workflow Services

Workflow services are Windows Communication Foundation (WCF) services authored with workflows. The implementation of the service contract is handled through one or more ReceiveActivity activities, which are sequence activities that support either one-way or request/response message exchanges with a client. The client invokes operations through SendActivity activities, which are basic activities that support the same message exchange scenarios as the workflow service.

The key advantages of using workflow services are the following:

  • Data Exchange. Workflow services provide a model to easily get data in and out of a workflow through the new ReceiveActivity and SendActivity types.

  • Inheriting Windows Workflow Foundation functionality. Like workflows, workflow services support persistence, so you can have long-running services that can survive machine reboots, unload from memory when the service is idle, and have all of the other advantages to using Windows Workflow Foundation in application development

  • Application-protocol support. Workflow services help determine which operations are called and in which sequence. This is because SendActivity and ReceiveActivity activities can be child activities of control flow activities like IfElseActivity, PolicyActivity, ConditionedActivityGroup, and so on.

Another facet of workflow services is that they can easily be hosted in Internet Information Services (IIS). For more information, see How to: Host a Workflow Service in IIS.

Durable Services

Durable services are WCF services that persist their state information to a storage medium after an operation decorated with the DurableOperationAttribute has completed.

For more information about durable services, see How to: Enable Persistence for a Durable Service.

See Also

Concepts

Workflow Service Authoring Styles

Other Resources

Creating Workflow Services and Durable Services