本文整理汇总了C#中System.Activities.WorkflowApplication.Load方法的典型用法代码示例。如果您正苦于以下问题:C# WorkflowApplication.Load方法的具体用法?C# WorkflowApplication.Load怎么用?C# WorkflowApplication.Load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Activities.WorkflowApplication
的用法示例。
在下文中一共展示了WorkflowApplication.Load方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LoadAndCompleteInstance
static void LoadAndCompleteInstance()
{
string input = Console.ReadLine();
WorkflowApplication application = new WorkflowApplication(activity);
application.InstanceStore = instanceStore;
application.Completed = (workflowApplicationCompletedEventArgs) =>
{
Console.WriteLine("\nWorkflowApplication has Completed in the {0} state.", workflowApplicationCompletedEventArgs.CompletionState);
};
application.Unloaded = (workflowApplicationEventArgs) =>
{
Console.WriteLine("WorkflowApplication has Unloaded\n");
instanceUnloaded.Set();
};
application.Load(id);
//this resumes the bookmark setup by readline
application.ResumeBookmark(readLineBookmark, input);
instanceUnloaded.WaitOne();
}
示例2: SESampleProcess2WorkFlow
public SESampleProcess2WorkFlow(string instanceId)
: base()
{
SESampleProcess2 wf = new SESampleProcess2();
app = new WorkflowApplication(wf);
app.InstanceStore = TrackingSqlWorkflowInstanceStore.generateOne();
Guid g=new Guid(instanceId);
app.Load(g);
this.MakeAsyncSync();
}
示例3: Load
/// <summary>
/// 加载工作流
/// </summary>
/// <param name="id">工作流的唯一标示</param>
/// <param name="bookMark">标签名称</param>
/// <param name="ids">恢复指定名称的书签的时候,传入的参数</param>
/// <returns>工作流的加载的状态</returns>
public string Load(string id, object inputs = null)
{
_instanceStore = new SqlWorkflowInstanceStore(connectionString);
InstanceView view = _instanceStore.Execute
(_instanceStore.CreateInstanceHandle(),
new CreateWorkflowOwnerCommand(),
TimeSpan.FromSeconds(30));
_instanceStore.DefaultInstanceOwner = view.InstanceOwner;
WorkflowApplication i = new WorkflowApplication(ActivityXamlServices.Load(path));
i.InstanceStore = _instanceStore;
i.PersistableIdle = (waiea) => PersistableIdleAction.Unload;
i.Load(new Guid(id));
return i.ResumeBookmark(bookMark, inputs).GetString();
}
示例4: Start
public static void Start(Guid? instanceId)
{
var instance = new WorkflowApplication(new Workflow1());
instance.PersistableIdle += OnPersistableIdle;
instance.Completed += OnCompleted;
instance.Idle += OnIdle;
instance.Unloaded += OnUnloaded;
// UNDONE: (maj) rather than using parameters, first check to see if there is an incomplete persisted file
// and start from there
if (!instanceId.HasValue)
{
instance.InstanceStore = new XmlWorkflowInstanceStore(instance.Id);
instance.Run();
}
else
{
instance.InstanceStore = new XmlWorkflowInstanceStore(instanceId.Value);
instance.Load(instanceId.Value);
instance.Run();
}
}
示例5: btnEdit_ServerClick
//end
protected void btnEdit_ServerClick(object sender, EventArgs e)
{
if (this.DropDown_sp.SelectedValue.Length == 0)
{
MessageBox.Show(this, "请您选择审核结果");
}
else
{
Model.SelectRecord selectRecords = new Model.SelectRecord("view_DocumentInfo", "", "*", "where id='" + id + "'");
DataTable dt = BLL.SelectRecord.SelectRecordData(selectRecords).Tables[0];
//ziyunhx add 2013-8-5 workflow Persistence
if (dt == null)
{
return;
}
Model.SelectRecord selectRecord = new Model.SelectRecord("WorkFlow", "", "*", "where id='" + dt.Rows[0]["WorkFlowID"].ToString() + "'");
DataTable table = BLL.SelectRecord.SelectRecordData(selectRecord).Tables[0];
string content = File.ReadAllText(System.Web.HttpContext.Current.Request.MapPath("../") + table.Rows[0]["URL"].ToString());
instance = engineManager.createInstance(content, null, null);
if (instanceStore == null)
{
instanceStore = new SqlWorkflowInstanceStore(SqlHelper.strconn);
view = instanceStore.Execute(instanceStore.CreateInstanceHandle(), new CreateWorkflowOwnerCommand(), TimeSpan.FromSeconds(30));
instanceStore.DefaultInstanceOwner = view.InstanceOwner;
}
instance.InstanceStore = instanceStore;
Guid guid = new Guid(dt.Rows[0]["FlowInstranceID"].ToString());
instance.Load(guid);
//end
if (this.DropDown_sp.SelectedValue == "true")
{
string[] s = dt.Rows[0]["OID"].ToString().Split(new char[] { ',' });
if (s[s.Length - 1] == "1")
{
Model.SelectRecord selectExecut = new Model.SelectRecord("WorkFlowExecution", "", "*", "where DID='" + id + "' and step ='" + dt.Rows[0]["WStep"].ToString() + "' and UID='"+this.Session["admin"].ToString()+"'");
DataTable executdt = BLL.SelectRecord.SelectRecordData(selectExecut).Tables[0];
if (executdt.Rows.Count > 0)
{
MessageBox.ShowAndRedirect(this, "该公文您已审核,请等待其他人审核!", "/document/DocumentList.aspx");
}
else {
Model.SelectRecord selectExecutCount = new Model.SelectRecord("WorkFlowExecution", "", "distinct UID", "where DID='" + id + "' and step ='" + dt.Rows[0]["WStep"].ToString() + "'");
DataTable dtcount = BLL.SelectRecord.SelectRecordData(selectExecutCount).Tables[0];
string where = "where IsState=2 AND (1=2 ";
string[] str = dt.Rows[0]["OID"].ToString().Split(new char[] { ',' });
for (int j = 1; j < str.Length-1; j++)
{
where += "OR OID like '%" + str[j].ToString() + "%' ";
}
where += ") order by id desc";
Model.SelectRecord selectUserCount = new Model.SelectRecord("Users", "", "ID", where);
DataTable usercount = BLL.SelectRecord.SelectRecordData(selectUserCount).Tables[0];
if (dtcount.Rows.Count + 1 == usercount.Rows.Count)
{
if (instance.GetBookmarks().Count(p => p.BookmarkName == dt.Rows[0]["value"].ToString()) == 1)
{
instance.ResumeBookmark(dt.Rows[0]["value"].ToString(), this.DropDown_sp.SelectedValue.ToString());
}
}
}
}
else
{
//一旦审批未通过,删除该公文当前流转步骤信息
BLL.GeneralMethods.GeneralDelDB("WorkFlowExecution", "where DID ='" + id + "' and step='" + dt.Rows[0]["WStep"].ToString() + "'");
if (instance.GetBookmarks().Count(p => p.BookmarkName == dt.Rows[0]["value"].ToString()) == 1)
{
instance.ResumeBookmark(dt.Rows[0]["value"].ToString(), this.DropDown_sp.SelectedValue.ToString());
}
}
Model.WorkFlowExecution workexe = new Model.WorkFlowExecution
{
DID = dt.Rows[0]["ID"].ToString(),
UID = this.Session["admin"].ToString(),
step = dt.Rows[0]["WStep"].ToString(),
Remark = this.txtSP.Value.Trim(),
Result = "1",
};
BLL.WorkFlowExecution.Add(workexe);
}
else
{
Model.WorkFlowExecution workexe = new Model.WorkFlowExecution
{
DID = dt.Rows[0]["ID"].ToString(),
UID = this.Session["admin"].ToString(),
step = dt.Rows[0]["WStep"].ToString(),
Remark = this.txtSP.Value.Trim(),
Result = "2",
//.........这里部分代码省略.........
示例6: cmdUpdateInstance_Click
private void cmdUpdateInstance_Click(object sender, RoutedEventArgs e)
{
SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore();
instanceStore.ConnectionString =
@"Data Source=(LocalDB)\v11.0;Initial Catalog=WFPersist;Integrated Security=True";
WorkflowApplicationInstance wfInstance =
WorkflowApplication.GetInstance(new Guid(txtUpdateInstance.Text), instanceStore);
DataContractSerializer s = new DataContractSerializer(typeof(DynamicUpdateMap));
using (FileStream fs = File.Open(txtUpdateMapFile.Text, FileMode.Open))
{
updateMap = s.ReadObject(fs) as DynamicUpdateMap;
}
var wfApp =
new WorkflowApplication(new MovieRentalProcess(),
new WorkflowIdentity
{
Name = "v2MovieRentalProcess",
Version = new System.Version(2, 0, 0, 0)
});
IList<ActivityBlockingUpdate> act;
if (wfInstance.CanApplyUpdate(updateMap, out act))
{
wfApp.Load(wfInstance, updateMap);
wfApp.Unload();
}
}
示例7: ParalleStateDealNew
/// <summary>
/// 驱动并发的子流程
/// </summary>
private static bool ParalleStateDealNew(WfInstanceEntity wfInstanceEntity,
WfInstanceStatesEntity wfInstanceStatesEntity, List<DealPersonInfo> dealPersonInfo)
{
try
{
var sql =
string.Format(
" select WfInstanceId from WF_Messages with (nolock) where FormID='{0}' and ReceiveDeptId='{1}' and ReceiveUserId='{2}' and MessageType={3} ",
wfInstanceEntity.FormID, wfInstanceStatesEntity.TransactDepartmentID, wfInstanceStatesEntity.TransactUserID, (int)EnumWfMessageType.WaitForDo);
var instanceId = DataHelper.ExecuteScalar(sql) == null ? Guid.Empty : new Guid(DataHelper.ExecuteScalar(sql).ToString());
var sb = new StringBuilder();
if (dealPersonInfo != null && dealPersonInfo.Count > 0)
{
foreach (var personInfo in dealPersonInfo)
{
sb.Append(personInfo.PersonId + "," + personInfo.PersonName + "," + personInfo.DeptId + "," +
personInfo.DeptName);
sb.Append("$");
}
}
wfInstanceEntity.InstanceID = instanceId;
wfInstanceStatesEntity.InstanceID = instanceId;
var flowData = new FlowData
{
WFInstance = wfInstanceEntity,
WfInstanceStates = wfInstanceStatesEntity,
ParallelBranchesCount = 0,
DealPersonInfo = sb.ToString()
};
var inputParameter = new Dictionary<string, object>
{
{"FlowDataParm", flowData},
{"NextDeptType", ""},
{ "DealWay", wfInstanceStatesEntity.WfDealWayId.ToString().ToUpper() }
};
var cswfTemplateEntity =
WfTemplateDataBusiness.GetWfTemplateDataByTemplateID(wfInstanceEntity.TemplateID);
var activity = GetActivity(cswfTemplateEntity.TemplateData);
var instance = new WorkflowApplication(activity);
var instanceStore = new SqlWorkflowInstanceStore(DataHelper.CONNECTION_STRING);
instanceStore.InstanceLockedExceptionAction = InstanceLockedExceptionAction.AggressiveRetry;
instanceStore.HostLockRenewalPeriod = TimeSpan.FromSeconds(30); //解决再次load时lock的问题
instance.InstanceStore = instanceStore;
instance.PersistableIdle = (waiea) => PersistableIdleAction.Unload;
instance.Load(wfInstanceEntity.InstanceID);
instance.ResumeBookmark("GetFlowData", inputParameter);
return false;
}
catch (Exception ex)
{
LogWritter.WriteSystemExceptionLog(ex);
throw ex;
}
}
示例8: WhenPersistedInstanceLoadedRunEpisodeShouldComplete
public void WhenPersistedInstanceLoadedRunEpisodeShouldComplete()
{
var activity = new TestBookmark<int> { BookmarkName = "Test" };
var workflowApplication = new WorkflowApplication(activity)
{
InstanceStore = new MemoryStore(), PersistableIdle = args => PersistableIdleAction.Unload,
};
// Episodes can end with until unloaded, aborted, completed, timeout
// Run episode until unloaded because of persistable idle event
var workflowIdleEpisodeResult =
workflowApplication.RunEpisode(Constants.Timeout) as WorkflowIdleEpisodeResult;
Assert.IsNotNull(workflowIdleEpisodeResult);
// Cannot resume the same WorkflowApplication - it will cause a System.InvalidOperationException
// Message=WorkflowInstance (guid) cannot be modified after it has started running.
var workflowApplicationResume = new WorkflowApplication(activity) { InstanceStore = new MemoryStore(), };
// Load the instance with a new WorkflowApplication
workflowApplicationResume.Load(workflowIdleEpisodeResult.InstanceId);
// Resume and complete
var result = workflowApplicationResume.ResumeEpisodeBookmark("Test", 1);
Assert.IsInstanceOfType(result, typeof(WorkflowCompletedEpisodeResult));
Assert.AreEqual(ActivityInstanceState.Closed, result.State);
AssertOutArgument.AreEqual(((WorkflowCompletedEpisodeResult)result).Outputs, "Result", 1);
}
示例9: Run
static void Run()
{
AutoResetEvent applicationUnloaded = new AutoResetEvent(false);
WorkflowApplication application = new WorkflowApplication(workflow);
application.InstanceStore = instanceStore;
SetupApplication(application, applicationUnloaded);
StepCountExtension stepCountExtension = new StepCountExtension();
application.Extensions.Add(stepCountExtension);
application.Run();
Guid id = application.Id;
applicationUnloaded.WaitOne();
while (stepCountExtension.CurrentCount < totalSteps)
{
application = new WorkflowApplication(workflow);
application.InstanceStore = instanceStore;
SetupApplication(application, applicationUnloaded);
stepCountExtension = new StepCountExtension();
application.Extensions.Add(stepCountExtension);
application.Load(id);
string input = Console.ReadLine();
application.ResumeBookmark(echoPromptBookmark, input);
applicationUnloaded.WaitOne();
}
}
示例10: DriveWorkFlowNew
private static void DriveWorkFlowNew(WfInstanceEntity wfInstanceEntity,
WfInstanceStatesEntity wfInstanceStatesEntity, List<DealPersonInfo> dealPersonInfo, List<Guid> parallelDeptGuid)
{
try
{
var sb = new StringBuilder();
if (dealPersonInfo != null && dealPersonInfo.Count > 0)
{
foreach (var personInfo in dealPersonInfo)
{
sb.Append(personInfo.PersonId + "," + personInfo.PersonName + "," + personInfo.DeptId + "," +
personInfo.DeptName);
sb.Append("$");
}
}
var parallelBranchesCount = 0;
if (wfInstanceEntity.CurrentStateType == (int)EnumWfStateType.Parllel) //并行状态处理
{
if (dealPersonInfo != null && dealPersonInfo.Count > 0)
{
parallelBranchesCount = dealPersonInfo.Count;
}
}
//var isContinueWf = true;
//if (wfInstanceEntity.CurrentStateType == (int) EnumWfStateType.Parllel) //并行状态处理
//{
// isContinueWf = ParalleStateDealNew(wfInstanceEntity, wfInstanceStatesEntity, dealPersonInfo);
//}
//if (isContinueWf)
//{
var flowData = new FlowData
{
WFInstance = wfInstanceEntity,
WfInstanceStates = wfInstanceStatesEntity,
ParallelBranchesCount = parallelBranchesCount,
DealPersonInfo = sb.ToString()
};
var inputParameter = new Dictionary<string, object>
{
{"FlowDataParm", flowData},
{"NextDeptType", ""},
{ "DealWay", wfInstanceStatesEntity.WfDealWayId.ToString().ToUpper() }
};
var cswfTemplateEntity =
WfTemplateDataBusiness.GetWfTemplateDataByTemplateID(wfInstanceEntity.TemplateID);
var activity = GetActivity(cswfTemplateEntity.TemplateData);
var instance = new WorkflowApplication(activity);
var instanceStore = new SqlWorkflowInstanceStore(Common.GetConnectString());
instanceStore.InstanceLockedExceptionAction = InstanceLockedExceptionAction.AggressiveRetry;
instanceStore.HostLockRenewalPeriod = TimeSpan.FromSeconds(30); //解决再次load时lock的问题
instance.InstanceStore = instanceStore;
instance.PersistableIdle = (waiea) => PersistableIdleAction.Unload;
instance.Load(wfInstanceEntity.InstanceID);
instance.ResumeBookmark("GetFlowData", inputParameter);
// }
}
catch (InstanceLockedException lockedException)
{
LogWritter.WriteSystemExceptionLog(lockedException);
}
catch (Exception ex)
{
LogWritter.WriteSystemExceptionLog(ex);
throw ex;
}
}
示例11: Main
static void Main(string[] args)
{
SqlWorkflowInstanceStore store = new SqlWorkflowInstanceStore(connectionString);
WorkflowApplication.CreateDefaultInstanceOwner(store, null, WorkflowIdentityFilter.Any);
IDictionary<WorkflowIdentity, DynamicUpdateInfo> updateMaps = LoadMaps();
foreach (Guid id in GetIds())
{
// Get a proxy to the instance.
WorkflowApplicationInstance instance =
WorkflowApplication.GetInstance(id, store);
Console.WriteLine("Inspecting: {0}", instance.DefinitionIdentity);
// Only update v1 workflows.
if (instance.DefinitionIdentity != null &&
instance.DefinitionIdentity.Version.Equals(new Version(1, 0, 0, 0)))
{
DynamicUpdateInfo info = updateMaps[instance.DefinitionIdentity];
// Associate the persisted WorkflowApplicationInstance with
// a WorkflowApplication that is configured with the updated
// definition and updated WorkflowIdentity.
Activity wf = WorkflowVersionMap.GetWorkflowDefinition(info.newIdentity);
WorkflowApplication wfApp =
new WorkflowApplication(wf, info.newIdentity);
// Apply the Dynamic Update.
wfApp.Load(instance, info.updateMap);
// Persist the updated instance.
wfApp.Unload();
Console.WriteLine("Updated to: {0}", info.newIdentity);
}
else
{
// Not updating this instance, so unload it.
instance.Abandon();
}
}
}
示例12: EnterGuess_Click
private void EnterGuess_Click(object sender, EventArgs e)
{
if (WorkflowInstanceId == Guid.Empty)
{
MessageBox.Show("Please select a workflow.");
return;
}
int guess;
if (!Int32.TryParse(Guess.Text, out guess))
{
MessageBox.Show("Please enter an integer.");
Guess.SelectAll();
Guess.Focus();
return;
}
WorkflowApplicationInstance instance = WorkflowApplication.GetInstance(WorkflowInstanceId, store);
// Use the persisted WorkflowIdentity to retrieve the correct workflow
// definition from the dictionary.
Activity wf = WorkflowVersionMap.GetWorkflowDefinition(instance.DefinitionIdentity);
// Associate the WorkflowApplication with the correct definition
WorkflowApplication wfApp = new WorkflowApplication(wf, instance.DefinitionIdentity);
// Configure the extensions and lifecycle handlers.
// Do this before the instance is loaded. Once the instance is
// loaded it is too late to add extensions.
ConfigureWorkflowApplication(wfApp);
// Load the workflow.
wfApp.Load(instance);
// Resume the workflow.
wfApp.ResumeBookmark("EnterGuess", guess);
// Clear the Guess textbox.
Guess.Clear();
Guess.Focus();
}
示例13: RunInstance
private static void RunInstance(Guid guid, string bookmark, Activity activity, object args)
{
SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore(ConnectString);
WorkflowApplication application = new WorkflowApplication(activity);
application.InstanceStore = instanceStore;
application.PersistableIdle = (e) =>
{
return PersistableIdleAction.Unload;
};
application.Load(guid);
application.ResumeBookmark(bookmark, args);
}
示例14: ProcessEquipmentArr
/// <summary>
/// 重新启动工作流,是审核过程中保存审核结果的必要流程
/// </summary>
/// <param name="meeting">传入一个Meeting对象,主要是取里面的InstanceID和改变后的Status(这个status是标识meetingAndRoom的)</param>
public static void ProcessEquipmentArr(Model.Meeting meeting)
{
//SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore(connectionString);
//WorkflowApplication application1 = new WorkflowApplication(new MeetingApply());
//application1.InstanceStore = instanceStore;
//application1.Completed = (workflowComplete) =>
//{
//};
//application1.Unloaded = (workflowUnloaded) =>
//{
// instanceUnloaded.Set();
//};
//application1.PersistableIdle = (e) =>
// {
// instanceUnloaded.Set();
// return PersistableIdleAction.Unload;
// };
//application1.Load(meeting.WFID);
//application1.ResumeBookmark("MeetingApply", meeting.MeetingStatus);
//instanceUnloaded.WaitOne();
SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore(connectionString);
IDictionary<string, object> input = new Dictionary<string, object>()
{
{ "Request", meeting }
};
WorkflowApplication application1 = new WorkflowApplication(new MeetingApply());
application1.InstanceStore = instanceStore;
application1.Completed = (workflowComplete) =>
{
};
application1.Unloaded = (workflowUnloaded) =>
{
instanceUnloaded.Set();
};
application1.PersistableIdle = (e) =>
{
instanceUnloaded.Set();
return PersistableIdleAction.Unload;
};
application1.Load(meeting.WFID);
application1.ResumeBookmark("ArrEquipment", meeting.MeetingStatus);
instanceUnloaded.WaitOne();
}
示例15: DriveWorkFlowofChange
/// <summary>
///
/// </summary>
private static void DriveWorkFlowofChange(WfInstanceEntity wfInstanceEntity,
WfInstanceStatesEntity wfInstanceStatesEntity)
{
var sql = string.Format(" select count(FormId) from WF_ModifyStatesInstance where FormId='{0}' and ExcuteState<>{1} ", wfInstanceEntity.FormID, (int)ExcuteState.Excuted);
if (Convert.ToInt32(DataHelper.ExecuteScalar(sql)) > 0)
{
//var stateId = GetCurrentState(wfInstanceEntity.FormID);
var res = WfModifyStatesInstanceBusiness.Deal(wfInstanceEntity.FormID.ToString(),
wfInstanceStatesEntity.WfDealWayId.ToString(),
wfInstanceStatesEntity.TransactUserID.ToString(),
wfInstanceStatesEntity.StateDescription);
var result = DataHelper.ExecuteScalar(sql); //所有状态都执行完了,继续主工作流程
if (res == 0 || Convert.ToInt32(result) == 0)
{
var flowData = new FlowData
{
WFInstance = wfInstanceEntity,
WfInstanceStates = wfInstanceStatesEntity
};
var inputParameter = new Dictionary<string, object>
{
{"FlowDataParm", flowData},
{"NextDeptType", ""},
{"DealWay", wfInstanceStatesEntity.WfDealWayId.ToString().ToUpper()}
};
var cswfTemplateEntity =
WfTemplateDataBusiness.GetWfTemplateDataByTemplateID(wfInstanceEntity.TemplateID);
var activity = GetActivity(cswfTemplateEntity.TemplateData);
var instance = new WorkflowApplication(activity);
var instanceStore = new SqlWorkflowInstanceStore(Common.GetConnectString());
instanceStore.InstanceLockedExceptionAction = InstanceLockedExceptionAction.AggressiveRetry;
instanceStore.HostLockRenewalPeriod = TimeSpan.FromSeconds(30); //解决再次load时lock的问题
instance.InstanceStore = instanceStore;
instance.PersistableIdle = (waiea) => PersistableIdleAction.Unload;
instance.Load(wfInstanceEntity.InstanceID);
instance.ResumeBookmark("GetFlowData", inputParameter);
}
}
else //按照原来的处理方式处理
{
var flowData = new FlowData
{
WFInstance = wfInstanceEntity,
WfInstanceStates = wfInstanceStatesEntity
};
var inputParameter = new Dictionary<string, object>
{
{"FlowDataParm", flowData},
{"NextDeptType", ""},
{"DealWay", wfInstanceStatesEntity.WfDealWayId.ToString().ToUpper()}
};
var cswfTemplateEntity =
WfTemplateDataBusiness.GetWfTemplateDataByTemplateID(wfInstanceEntity.TemplateID);
var activity = GetActivity(cswfTemplateEntity.TemplateData);
var instance = new WorkflowApplication(activity);
var instanceStore = new SqlWorkflowInstanceStore(Common.GetConnectString());
instanceStore.InstanceLockedExceptionAction = InstanceLockedExceptionAction.AggressiveRetry;
instanceStore.HostLockRenewalPeriod = TimeSpan.FromSeconds(30); //解决再次load时lock的问题
instance.InstanceStore = instanceStore;
instance.PersistableIdle = (waiea) => PersistableIdleAction.Unload;
instance.Load(wfInstanceEntity.InstanceID);
instance.ResumeBookmark("GetFlowData", inputParameter);
}
}