本文整理汇总了C#中System.Activities.WorkflowApplication.Persist方法的典型用法代码示例。如果您正苦于以下问题:C# WorkflowApplication.Persist方法的具体用法?C# WorkflowApplication.Persist怎么用?C# WorkflowApplication.Persist使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Activities.WorkflowApplication
的用法示例。
在下文中一共展示了WorkflowApplication.Persist方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateAndRun
private static Guid CreateAndRun(IDictionary<string, object> data, Activity activity)
{
SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore(ConnectString);
WorkflowApplication application = new WorkflowApplication(activity, data);
application.InstanceStore = instanceStore;
application.PersistableIdle = (e) =>
{
return PersistableIdleAction.Unload;
};
application.Persist();
Guid id = application.Id;
application.Run();
return id;
}
示例2: CreateAndRun
/// <summary>
/// 创建并启动一个工作流,在申请时候触发
/// </summary>
/// <param name="meeting">申请时所填表单的数据</param>
/// <returns>返回一个Guid</returns>
public static Guid CreateAndRun(Model.Meeting meeting, Dictionary<int, int> d_EquipmentCount,Dictionary<string,string> MeetingUserNameAndEmail,Model.MeetingRoom MeetingRoomIDAndName)
{
SqlWorkflowInstanceStore instanceStore = new SqlWorkflowInstanceStore(connectionString);
InstanceView view = instanceStore.Execute(instanceStore.CreateInstanceHandle(), new CreateWorkflowOwnerCommand(),TimeSpan.FromDays(30));
instanceStore.DefaultInstanceOwner = view.InstanceOwner;
IDictionary<string, object> input = new Dictionary<string, object>();
input.Add("Request",meeting);
input.Add("EquipmentCount",d_EquipmentCount);
input.Add("MeetingUserEmailFrom", MeetingUserNameAndEmail);
input.Add("MeetingRoomIDAndName", MeetingRoomIDAndName);
WorkflowApplication application = new WorkflowApplication(new MeetingApply(),input);
application.InstanceStore = instanceStore;
application.PersistableIdle = (e) =>
{
instanceUnloaded.Set();
return PersistableIdleAction.Unload;
};
application.Unloaded = (e) =>
{
instanceUnloaded.Set();
};
application.OnUnhandledException = (ex) =>
{
return UnhandledExceptionAction.Terminate;
};
Guid id = application.Id;
application.Persist();
application.Run();
instanceUnloaded.WaitOne();
return id;
}
示例3: StartAndUnloadInstance
static void StartAndUnloadInstance()
{
WorkflowApplication application = new WorkflowApplication(activity);
application.InstanceStore = instanceStore;
//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory
application.PersistableIdle = (e) =>
{
return PersistableIdleAction.Unload;
};
application.Unloaded = (e) =>
{
instanceUnloaded.Set();
};
//This call is not required
//Calling persist here captures the application durably before it has been started
application.Persist();
id = application.Id;
application.Run();
instanceUnloaded.WaitOne();
}