public WorkflowInstance CreateInstance(Dictionary <string, object> Parameters, string queuename, string correlationId, WorkflowInstance.idleOrComplete idleOrComplete, WorkflowInstance.VisualTrackingHandler VisualTracking) { if (this.Parameters == null) { this.Parameters = new List <workflowparameter>(); } if (this.Parameters.Count == 0) { ParseParameters(); } var instance = WorkflowInstance.Create(this, Parameters); instance.queuename = queuename; instance.correlationId = correlationId; if (idleOrComplete != null) { instance.OnIdleOrComplete += idleOrComplete; } if (VisualTracking != null) { instance.OnVisualTracking += VisualTracking; } Instances.Add(instance); //instance.Run(); return(instance); }
public async Task <WorkflowInstance> Run(Dictionary <string, object> Parameters, string queuename, string correlationId, WorkflowInstance.idleOrComplete idleOrComplete) { var instance = await WorkflowInstance.Create(this, Parameters); instance.queuename = queuename; instance.correlationId = correlationId; if (idleOrComplete != null) { instance.OnIdleOrComplete += idleOrComplete; } Instances.Add(instance); await instance.Run(); return(instance); }