2013-02-21 31 views
0

我正在使用重新托管的工作流,业务分析师正在创建WF。企业提出的一个有趣的要求是,他们希望以某种矩阵格式(例如Excel)输出WF所有可能路径的输出。
这在技术上是否可行,因为我没有在.Net框架中找到任何具有这种功能的东西。
基本上,有没有一种方法来遍历/循环WF中的活动?以编程方式遍历WF

回答

2

检查这个答案:Get Child Activity Subtree

粘贴代码的完整性:

public static IEnumerable<Activity> GetInnerActivities(this Activity activity) 
{ 
    var children = WorkflowInspectionServices.GetActivities(activity); 

    foreach (var child in children) 
    { 
     children = children.Concat(child.GetInnerActivities()); 
    } 

    return children; 
} 

这个扩展方法递归遍历活动树。只需根据您的需求调整代码即可。