WorkflowInstance 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
警告
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
代表工作流程執行個體。
public ref class WorkflowInstance sealed
public sealed class WorkflowInstance
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public sealed class WorkflowInstance
type WorkflowInstance = class
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type WorkflowInstance = class
Public NotInheritable Class WorkflowInstance
- 繼承
-
WorkflowInstance
- 屬性
範例
下列程式碼範例將示範如何在工作流程主機中建立和啟動 WorkflowInstance。 下列程式碼會建立 WorkflowRuntime 的執行個體、加入服務至執行階段,然後示範建立 WorkflowInstance 物件的建議方式。 程式碼藉由呼叫 WorkflowInstance 方法和傳遞之前建立的類型給它來初始化 CreateWorkflow。 WorkflowInstance 由 Start 方法呼叫啟動。
這個程式碼範例是 Program.cs 檔案中<取消工作流程 SDK>範例的一部分。 如需詳細資訊,請參閱 取消工作流程。
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
備註
注意
此資料討論已被汰換的類型及命名空間。 如需詳細資訊,請參閱 Windows Workflow Foundation 4.5 中即將淘汰的類型。
WorkflowInstance 類別會公開可用於控制工作流程執行個體之執行的方法和屬性,它基本上是工作流程執行階段引擎使用的實際工作流程執行個體的 Proxy。 主機或服務可以呼叫包含在 WorkflowInstance 類別中的適當方法,來指示工作流程執行階段引擎在工作流程執行個體上執行動作。 如果要求的動作無效,例如,如果主機呼叫已完成的工作流程執行個體上的 Load,則工作流程執行階段引擎會引發適當的例外狀況。
注意
如果工作流程執行個體因為主應用程式 (Host Application) 上的呼叫沒有傳回而變得沒有回應,復原執行個體的唯一方法就是重新啟動執行階段。 不過,如果已強制卸載、中止或暫停執行個體,則透過呼叫 WorkflowInstance.Resume 方法可以繼續該執行個體。
屬性
InstanceId |
已淘汰.
取得工作流程執行個體的唯一識別碼。 |
WorkflowRuntime |
已淘汰.
取得此工作流程執行個體的 WorkflowRuntime。 |
方法
Abort() |
已淘汰.
中止工作流程執行個體。 |
ApplyWorkflowChanges(WorkflowChanges) |
已淘汰.
將變更套用到 WorkflowChanges 物件指定的工作流程執行個體中。 |
EnqueueItem(IComparable, Object, IPendingWork, Object) |
已淘汰.
同步公佈訊息至指定的工作流程佇列。 |
EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) |
已淘汰.
工作流程閒置時,將訊息張貼至指定的工作流程佇列。 EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) 會等到工作流程到達閒置點,並在確認工作流程排程器閒置後 (也就是沒有任何正在執行的作用中操作時) 加入佇列中。 |
Equals(Object) |
已淘汰.
傳回指出指定的物件是否和 WorkflowInstance 相等的值。 |
GetHashCode() |
已淘汰.
傳回這個工作流程執行個體的雜湊程式碼。 |
GetType() |
已淘汰.
取得目前執行個體的 Type。 (繼承來源 Object) |
GetWorkflowDefinition() |
已淘汰.
擷取此工作流程執行個體的根活動。 |
GetWorkflowNextTimerExpiration() |
已淘汰.
傳回計時器訊息將會傳遞至此 WorkflowInstance 的下一個時間點。 |
GetWorkflowQueueData() |
已淘汰.
取得 WorkflowQueueInfo 物件的集合,其中包含此工作流程執行個體關聯的工作流程佇列之暫止項目 (Pending Item) 與訂閱的活動。 |
Load() |
已淘汰.
載入之前卸載的工作流程執行個體。 |
MemberwiseClone() |
已淘汰.
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ReloadTrackingProfiles() |
已淘汰.
重新載入此工作流程執行個體的追蹤設定檔。 |
Resume() |
已淘汰.
繼續執行之前暫止的工作流程執行個體。 |
Start() |
已淘汰.
開始執行工作流程執行個體。 |
Suspend(String) |
已淘汰.
暫止工作流程執行個體。 |
Terminate(String) |
已淘汰.
以同步方式結束工作流程執行個體。 |
ToString() |
已淘汰.
傳回代表目前物件的字串。 (繼承來源 Object) |
TryUnload() |
已淘汰.
執行個體暫止或閒置時,將工作流程執行個體從記憶體卸載到持續性存放區中。 |
Unload() |
已淘汰.
將工作流程執行個體從記憶體卸載到持續性存放區中。 此呼叫會封鎖到完成目前排程的工作後,或到異動範圍結束為止。 |
適用於
執行緒安全性
此型別具備執行緒安全。