zoukankan      html  css  js  c++  java
  • WF4___外部数据传递给工作流

    引言:
    本文的重点不是如何使用in,out参数,而是WF如何接收自身之外的数据

    在工作流执行过程中,往往需要外部环境传递数据给工作流。
    这可以从两个角度理解(杜撰):
    数据类型:审核数据、业务数据。
    数据传递的阶段:流程发起阶段、流程执行过程中。

    开始
    流程发起阶段,可以通过Dictionary传递参数。
    在流程执行过程,采用书签传递参数。
    一般而言,dictionary可以承载比较复杂的数据(一次可能需要传递多个业务数据),通过key-value与流程的变量一一映射。
    利用书签传递dictinary可能很难一一映射(期待有人拍砖),所以在传递多个参数的时候,可以考虑使用自定义数据类型来解决。
    如下图

    demo梳理

    1 自定义类:

     public class BookResult
        {
            public int days { get; set; }
            public string result { get; set; }
        }

    2 Rev(流程变量)为BookResult类型,判断节点的条件:Rev.days > 3

    3 流程总共两步,第2通过书签传递Rev

          public  void Excute(Guid id, string bookmark,BookResult rev)
            {
                WorkflowApplication WFApp = LoadInstance(id);

                System.Console.WriteLine("恢复书签");

                WFApp.ResumeBookmark(bookmark, rev);

                instanceUnloaded.WaitOne();
            }

    原始代码:https://files.cnblogs.com/wreading//WF.rar(如有问题,请指正,本人对WF4研究不深)

  • 相关阅读:
    poj 1088 滑雪
    位运算与bitset
    hdu 4607 Park Visit
    树的直径
    codeforces 495D Sonya and Matrix
    German Collegiate Programming Contest 2015(第三场)
    BAPC 2014 Preliminary(第一场)
    Benelux Algorithm Programming Contest 2014 Final(第二场)
    E. Reachability from the Capital(tarjan+dfs)
    poj2104 K-th Number(划分树)
  • 原文地址:https://www.cnblogs.com/wreading/p/2218657.html
Copyright © 2011-2022 走看看