zoukankan      html  css  js  c++  java
  • WF学习WorkFLow中的参数

    系统和WorkFlow交互有很多种方式,今天介绍的是通过WorkFlow的parameter的方式,系统怎么讲数据传输给Workflow,
    而Workflow怎么讲数据返回给系统。
    实例如下:
    大部分的操作和上篇建立Console Workflow Application相似,有几个不同的地方。
    首先,创建WorkflowInstance

    //增加参数
                    Dictionary<stringobject> parameters = new Dictionary<stringobject>();

                    parameters.Add(
    "MyInputParameter"42);

                    
    //使用参数parameters创建WorkflowInstance
                    WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(WorkflowConsoleApplication3.Workflow1), parameters);
                    instance.Start();


    然后,需要在workflow1.cs文件中增加MyInputParameter的属性
    public int myInputParameter = 0;


            
    public int MyInputParameter
            
    {
                
    get
                
    {
                    
    return this.myInputParameter;
                }

                
    set
                
    {
                    
    this.myInputParameter = value;
                }

            }

    在workflow中的一些Activity中给这个属性赋值
    private void codeActivity1_ExecuteCode(object sender, EventArgs e)
            
    {
                Console.WriteLine(
    "Hello WorkFlow");

                
    this.MyInputParameter = 100;
            }

    最后,我们看怎么得到workflow该数据返回到应用程序中
    我们给Workflowruntime 增加一个Completed 事件,事件的代码如下:
    static void workflowRuntime_WorkflowCompleted(object sender, WorkflowCompletedEventArgs e)
            
    {
                Console.WriteLine("MyOutputParameter:{0}", e.OutputParameters["MyInputParameter"].ToString());
            }


    这样通过e.OutputParameters["MyInputParameter"].ToString()的方式就可以得到从workflow中的属性值。
    示例代码下载:/Files/maplye/WF/wf_code1.rar

  • 相关阅读:
    [Linux] Linux文件系统目录描述简介
    面试题07 二叉树两节点的最低公共祖先 [树]
    [C++] Stack / queue / priority_queue
    c#中byte[]和string的转换
    smartassembly 使用方法
    关于 Expression Blend 4安装是出现的“意见安排重启您的计算机”的解决方法
    php图片压缩
    我的dota之路
    OO系统设计师之路设计模型系列(1)软件架构和软件框架[从老博客搬家至此]
    const用法详解
  • 原文地址:https://www.cnblogs.com/maplye/p/410753.html
Copyright © 2011-2022 走看看