Windows Workflow Foundation 內的作業
本章節包含 BAM WF 攔截器所支援的自訂作業。
決定允許作業的位置
BAM WF 攔截器所提供的自訂作業,可依相關聯的 Windows Workflow Foundation 追蹤點類型分類:
活動
工作流程
使用者
BAM WF 攔截器會使用類別,將追蹤點類型指派給每個 OnEvent。 它會根據 在 OnEvent 篩選和資料擷取和操作區段中看到的作業類型進行此指派。 例如,如果OnEvent包含使用GetUserData作業的Update元素,則它是使用者追蹤點類型,因為活動和工作流程事件不支援這項作業。 如需追蹤點的詳細資訊,請參閱 中的 System.Workflow.Runtime.Tracking https://go.microsoft.com/fwlink/?LinkId=80242 。
注意
工作流程追蹤點無法從工作流程擷取資料。
作業必須在篩選運算式內,以及在篩選運算式與元素內 OnEvent
的資料擷取和操作區段之間相容。 下表顯示哪些作業可用於各追蹤點類型的篩選條件運算式。
篩選條件運算式作業 | 對活動追蹤點有效嗎? | 對工作流程追蹤點有效嗎? | 對使用者追蹤點有效嗎? |
---|---|---|---|
等於 | 是 | Yes | Yes |
和 | Yes | Yes | Yes |
Concatenate | No | No | No |
常數 | 是 | Yes | Yes |
GetActivityEvent | 是 | No | No |
GetActivityName | 是 | No | Yes |
GetActivityProperty | 是 | No | Yes |
GetActivityType | 是 | No | Yes |
GetContextProperty | No | No | No |
GetUserData | No | No | No |
GetUserDataType | No | No | Yes |
GetUserKey | No | No | Yes |
GetWorkflowEvent | No | 是 | No |
GetWorkflowProperty | No | No | No |
如果您混合不相容的作業,部署攔截器組態檔時,就會收到錯誤。 例如,如果您在篩選中使用 GetActivityEvent
和 GetWorkflowEvent
,或在篩選和資料擷取或操作事件中 (,例如 CorrelationID) ,您會收到錯誤。
下表摘要敘述資料擷取或操作中每項活動類型支援的作業。
資料擷取或操作作業 | 對活動追蹤點有效嗎? | 對工作流程追蹤點有效嗎? | 對使用者追蹤點有效嗎? |
---|---|---|---|
等於 | 是 | Yes | Yes |
和 | Yes | Yes | Yes |
Concatenate | Yes | Yes | 是 |
常數 | 是 | Yes | Yes |
GetActivityEvent | 是 | No | No |
GetActivityName | 是 | No | Yes |
GetActivityProperty | 是 | No | Yes |
GetActivityType | 是 | No | Yes |
GetContextProperty | Yes | Yes | Yes |
GetUserData | No | No | Yes |
GetUserDataType | No | No | Yes |
GetUserKey | No | No | Yes |
GetWorkflowEvent | No | 是 | No |
GetWorkflowProperty | 是 | No | Yes |
注意
單一 OnEvent 與單一追蹤點之間有一對一的對應。