Search code examples
wcfworkflow-foundation

WWF service - how do I make a service to be asyncronous?


I want to create a service which receives a request from the client, adds the request to a database and than calls another WWF service ASYNCRONOUS which does some time consuming job withthe data from the database.

How do I make a service to be asincronous in Windows Workflow service? I use the second Windows Workflow service as a queue(as it can only be one instance of this service=I set canCreateInstance to false).


Solution

  • To make a Workflow Service behave asynchronously create a One Way contract by using a Receive activity without a correlated SendReply.

    When another Workflow (or WCF client proxy) calls this service it will not wait for a reply from the service.

    As for your comment about only one instance of a service you are mistaken. There is no way to have a singleton workflow service (as there is with WCF services) and CanCreateInstance has no effect on this behavior.