WF4 Workflow Service:SendParameters和ReceiveParameters

本文主要介绍如何使用SendParameters和ReceiveParameters的使用,这两个活动允许你在调用服务的时候携带多个参数。 在Workflow Service上主要体现在Send,Receive,SendReply,ReceiveReply活动的Content属性的设置上。

下面的例子将通过使用SendParameters和ReceiveParameters将参数从客户端传到服务端,确认后给客户端发送回复。
 

1.服务端工作流ServiceWF流程设置如下图: 

工作流变量如下:

Name

Type

Scope

Default

servicemsg

String

Sequence

 

para

String

Sequence

 

流程设计如下:

clip_image002

 

使用WorkflowServiceHost宿主工作流如下:

class Program

    {

       static void Main(string[] args)

        {               

            WorkflowService service = new WorkflowService

            {

                Name = "CaryService",

                Body = new cary.ServiceWF()

            };

            Uri address = new Uri("http://localhost:8080/CaryWFServices");

            WorkflowServiceHost host = new WorkflowServiceHost(service, address);

            try

            {

                Console.WriteLine("Opening service...");

                host.Open();

                Console.WriteLine("Service is listening on {0}...", address);

                Console.WriteLine("To terminate press ENTER");

                Console.ReadLine();

            }

            catch (Exception ex)

            {

                Console.WriteLine("Service terminated with exception {0}", ex.ToString());

            }

            finally

            {

                host.Close();

            }

        }

    }

2.客户端工作流ClientWF流程设置如下图:

工作流变量如下:

Name

Type

Scope

Default

Clientmsg

String

Sequence

“I am a client Message1”

Result

String

Sequence

 

 

流程设计如下:

clip_image004

客户端调用程序如下:

class Program

    {       

        static void Main(string[] args)

        {           

            try

            {

                WorkflowInvoker.Invoke(new cary.ClientWF());

                Console.WriteLine("Workflow completed successfully.");

            }

            catch (Exception e)

            {

            Console.WriteLine("Workflow completed with {0}: {1}.", e.GetType().FullName, e.Message);            }

            Console.WriteLine("To exit press ENTER.");

            Console.ReadLine();

        }       

    } 

3.结果如下: 

clip_image006

 

 

 

本文转自生鱼片博客园博客,原文链接:http://www.cnblogs.com/carysun/archive/2009/12/11/WF4-SendPara.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值