# Workflow Application: WCF Service compared to ASMX Web Service

**URL:** <https://discuss.workflowgen.com/t/workflow-application-wcf-service-compared-to-asmx-web-service/477>\
**Category:** Workflow Applications\
**Created:** [January 18, 2014, 6:17am UTC](https://discuss.workflowgen.com/t/workflow-application-wcf-service-compared-to-asmx-web-service/477 "2014-01-18T06:17:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![wfg-admin](https://yyz2.discourse-cdn.com/flex030/user_avatar/discuss.workflowgen.com/wfg-admin/32/714_2.png) [@wfg-admin](https://discuss.workflowgen.com/u/wfg-admin)\
**Post date:** [January 18, 2014, 6:17am UTC](https://discuss.workflowgen.com/t/workflow-application-wcf-service-compared-to-asmx-web-service/477/1 "2014-01-18T06:17:57Z")

</div>

**Question**

We used to have two ways to set up ASMX web services for WorkflowGen as applications. One way is to process all context parameter manually including update multiple OUT parameters; another way is to create a standalone web service and use the WSDL implementation but one 1 value is expected to be returned  
(`RETURN_VALUE`).

**Answer**

WCF Service supports HTTP POST and SOAP methods.

**HTTP POST**

Similar to ASMX WS, this method passes and returns the workflow context parameter `WFGEN_CONTEXT` (string case sensitive). In this mode, you can pass and return as many parameters as needed since they are all embedded inside the workflow context.

[See FAQ and example](https://discuss.workflowgen.com/t/how-to-use-a-wcf-service-with-the-webhttpbinding-as-an-application-system-action-in-workflowgen/607)

**SOAP**

Similar to ASMX WS with WSDL, and uses specific parameter type defined in the web method. This mode accepts only one return parameter (`RETURN_VALUE`).

[See FAQ and example](https://discuss.workflowgen.com/t/workflow-application-how-to-use-a-wcf-service-as-a-workflow-application-with-basichttpbinding-or-wshttpbinding/470/1)

**SOAP with workflow context (as of WorkflowGen version 5.6.3)**

This is a new method that’s a combination of the preceding two. The WCF service is called using the SOAP protocol and passes/returns the workflow context as the only parameter of the web method. The parameter name can be either `workflowContext` or `WFGEN_CONTEXT` (string case insensitive). The return value is optional. So your web method could be Void.
