给WWF传递参数

一般有两个方法可以传递参数给工作流
分别是Paramter和Event
1Paramter,参数,就是工作留定义好传递的参数,以属性方式在工作流类中声明好。宿主在开始运行工作流之前给这些参数赋值,以key/value形式。
直接使用 Dictionary<string, object> parameters = new Dictionary<string, object>();
比如工作流中定义了这些属性
private string firstName;
 private string lastName;
 public string FirstName
 {
 set { firstName = value; }
 get { return firstName; }
 }

 public string LastName
 {
set { lastName = value; }
 get { return lastName; }
 }
那么宿主程序在工作流实例化之前进行赋值
Console.WriteLine("输入firstname:");
 string firstname = Console.ReadLine();
 Console.WriteLine("输入lastname:");
 string lastname = Console.ReadLine();
Dictionary<string, object> parameters = new Dictionary<string, object>();
 parameters.Add("FirstName", firstname );
 parameters.Add("LastName",lastname);
然后传递参数进去就行了。
 WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(HelloWorldWorkflow.Workflow1),parameters);
 instance.Start();
2Event,事件和方法,是指工作流添加activity的事件来接受和传递参数。宿主调用事件。工作流调用方法来传递参数。
具体例子可以参考状态机工作那个例子

本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

你可能感兴趣的:(传递参数)