//获取当前节点的上一个节点实例 ActivityInstanceBase IProcessService.GetPreviousActivityInstance(Process process) { var current = process.GetCurrentNode(); //将会获取到所有节点实例,应按倒序获取当前运行中的 var all = _repository.FindAllActivityInstances(process).OrderByDescending(o => o.CreateTime); //时间倒序查找第一个不等于当前节点的节点实例 foreach (var i in all) { if (i.FlowNodeIndex != current) { return(i); } } return(null); }