Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- WorkflowApplication wfApp = new WorkflowApplication(new ApprovalWF());
- wfApp.InstanceStore = new SqlWorkflowInstanceStore(ConfigurationManager.ConnectionStrings["WorkflowStore"].ConnectionString);
- wfApp.Load(approval.WorkflowId);
- //wfApp.Run();
- var bookmarkName = approverId.ToString() + approval.ApprovalId.ToString();
- wfApp.ResumeBookmark(bookmarkName, result);
- var inputs = new Dictionary<string, object>() { { "Approvers", approvers }, { "ApprovalId", approvalId }, { "RaiserId", raiserId }, { "ApprovalSwitch", switchValue } };
- try
- {
- SqlWorkflowInstanceStore store = new SqlWorkflowInstanceStore(ConfigurationManager.ConnectionStrings["WorkflowStore"].ConnectionString);
- AutoResetEvent waitHandler = new AutoResetEvent(false);
- WorkflowApplication approvalWf = new WorkflowApplication(new ApprovalWF(), inputs);
- approvalWf.InstanceStore = store;
- approvalWf.PersistableIdle = delegate(WorkflowApplicationIdleEventArgs e)
- {
- return PersistableIdleAction.Unload;
- };
- approvalWf.Unloaded = (e) =>
- {
- waitHandler.Set();
- };
- approvalWf.Completed = delegate(WorkflowApplicationCompletedEventArgs e)
- {
- LogEvents.Info("Workflow: " + approvalId + " has completed with arguments: " + e);
- };
- approvalWf.Aborted = delegate(WorkflowApplicationAbortedEventArgs e)
- {
- LogEvents.Error("Workflow for " + approvalId + " has been aborted: " + e);
- };
- approvalWf.OnUnhandledException = delegate(WorkflowApplicationUnhandledExceptionEventArgs e)
- {
- LogEvents.Error("Workflow for " + approvalId + " has thrown an error: " + e);
- return UnhandledExceptionAction.Terminate;
- };
- var id = approvalWf.Id;
- var approval =_approvalDac.SelectAwfApprovalByApprovalId(approvalId);
- var firstOrDefault = approval.FirstOrDefault();
- if (firstOrDefault != null) firstOrDefault.WorkflowId = id;
- _approvalDac.UpdateApproval(approval.FirstOrDefault());
- approvalWf.Run();
- waitHandler.WaitOne();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement