Editar

Compartilhar via


Operations in Windows Workflow Foundation

This section contains the custom operations supported by the BAM WF interceptor.

Determining Where Operations Are Allowed

The custom operations provided by the BAM WF interceptor can be categorized by the associated Windows Workflow Foundation track point type:

  • Activity

  • Workflow

  • User

    The BAM WF interceptor uses the categories to assign a track point type to each OnEvent. It bases this assignment on the types of operations it sees in the OnEvent filter and the data extraction and manipulation sections. For example, if the OnEvent contains an Update element that uses the GetUserData operation, it is a user track point type because the activity and workflow events do not support this operation. For more information about track points, see System.Workflow.Runtime.Tracking at https://go.microsoft.com/fwlink/?LinkId=80242.

Note

Workflow track points cannot extract data from the workflow.

Operations must be compatible both within a filter expression and between the filter expression and the data extraction and manipulation sections within an OnEvent element. The following table shows which operations can be used in a filter expression for each track point type.

Filter expression operation Valid for activity track point? Valid for workflow track point? Valid for user track point?
Equals Yes Yes Yes
And Yes Yes Yes
Concatenate No No No
Constant Yes Yes Yes
GetActivityEvent Yes No No
GetActivityName Yes No Yes
GetActivityProperty Yes No Yes
GetActivityType Yes No Yes
GetContextProperty No No No
GetUserData No No No
GetUserDataType No No Yes
GetUserKey No No Yes
GetWorkflowEvent No Yes No
GetWorkflowProperty No No No

If you mix incompatible operations, you will receive an error when you deploy your interceptor configuration file. For example, if you use both the GetActivityEvent and GetWorkflowEvent within a filter, or in a filter and data extraction or manipulation event (like CorrelationID), you will receive an error.

The following table summarizes the operations that each activity type supports in data extraction or manipulation.

Data extraction or manipulation operation Valid for activity track point? Valid for workflow track point? Valid for user track point?
Equals Yes Yes Yes
And Yes Yes Yes
Concatenate Yes Yes Yes
Constant Yes Yes Yes
GetActivityEvent Yes No No
GetActivityName Yes No Yes
GetActivityProperty Yes No Yes
GetActivityType Yes No Yes
GetContextProperty Yes Yes Yes
GetUserData No No Yes
GetUserDataType No No Yes
GetUserKey No No Yes
GetWorkflowEvent No Yes No
GetWorkflowProperty Yes No Yes

Note

There is a one-to-one mapping between a single OnEvent and a single track point.

In This Section

See Also

BAM WF Interceptor