UserTrackingLocation Class

Definition

Caution

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Defines an activity-qualified location that corresponds to a user event in the potential execution path of a root workflow instance. This class cannot be inherited.

public ref class UserTrackingLocation sealed
[System.Serializable]
public sealed class UserTrackingLocation
[System.Serializable]
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public sealed class UserTrackingLocation
[<System.Serializable>]
type UserTrackingLocation = class
[<System.Serializable>]
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type UserTrackingLocation = class
Public NotInheritable Class UserTrackingLocation
Inheritance
UserTrackingLocation
Attributes

Remarks

Note

This material discusses types and namespaces that are obsolete. For more information, see Deprecated Types in Windows Workflow Foundation 4.5.

An activity designer or a workflow designer may use any of the overloaded Activity.TrackData and ActivityExecutionContext.TrackData methods to instrument the workflow to emit data to the runtime tracking infrastructure as a user event. The data emitted is referred to as user data. Unlike activity status events, and workflow status events, which occur only on activity or workflow status changes, user events can occur at any location that is instrumented in a workflow. A UserTrackingLocation defines the matching parameters for such a location by specifying the type of the user data, the type of the activity from which it must be emitted, a collection of conditions that can more precisely qualify an instance or instances of this activity, an optional key name with which the user data must be associated, whether derived types of the user data should be matched, and whether user data emitted from activities derived from the type of the specified activity should be matched.

Note

A single UserTrackingLocation may refer to more than one actual location in the potential execution path of a workflow instance.

You may add a UserTrackingLocation to either UserTrackPoint.MatchingLocations or UserTrackPoint.ExcludedLocations in order to define the match parameters for a UserTrackPoint in a TrackingProfile.

There are three general conditions which must be met in the following order for the UserTrackingLocation to be matched by the runtime tracking infrastructure: the activity that has emitted a user event must match the set of activities specified by ActivityType, ActivityTypeName, Conditions, and MatchDerivedActivityTypes; the key, if one exists, associated with the user data must match KeyName; and, the type of the user data emitted by the user event must match the set of user data types specified by ArgumentType, ArgumentTypeName, and MatchDerivedArgumentTypes. Only if all three of these conditions are met, does the runtime tracking infrastructure consider the UserTrackingLocation matched.

To configure a UserTrackingLocation, you must set either ArgumentTypeName or ArgumentType to specify the type of the user data to be matched and either ActivityTypeName or ActivityType to specify the type of the activity from which the user data must be emitted to be matched. You may add ActivityTrackingCondition objects to Conditions to more completely qualify the activity from which the user data must be emitted. You may set MatchDerivedArgumentTypes to specify that user data derived from the user data type specified by ArgumentTypeName or ArgumentType should be matched, and you may set MatchDerivedActivityTypes to specify that user data emitted from activities derived from the activity type specified by ActivityTypeName or ActivityType should be matched.

You may set KeyName to specify that only user data associated with the specified key name should be matched for this UserTrackingLocation. If KeyName is a null reference (Nothing in Visual Basic), the runtime tracking structure will not try to match the key associated with the user data.

Constructors

UserTrackingLocation()

Initializes a new instance of the UserTrackingLocation class.

UserTrackingLocation(String)

Initializes a new instance of the UserTrackingLocation class by using the unqualified name of the common language runtime (CLR) type of the user data.

UserTrackingLocation(String, String)

Initializes a new instance of the UserTrackingLocation class by using the unqualified name of the common language runtime (CLR) type of the user data and the unqualified name of the CLR type of the activity from which the user data must be emitted.

UserTrackingLocation(String, Type)

Initializes a new instance of the UserTrackingLocation class by using the unqualified name of the common language runtime (CLR) type of the user data and the CLR type of the activity from which the user data must be emitted.

UserTrackingLocation(Type)

Initializes a new instance of the UserTrackingLocation class using the common language runtime (CLR) type of the user data.

UserTrackingLocation(Type, String)

Initializes a new instance of the UserTrackingLocation class by using the common language runtime (CLR) type of the user data and unqualified name of the CLR type of the activity from which the user data must be emitted.

UserTrackingLocation(Type, Type)

Initializes a new instance of the UserTrackingLocation class by using the common language runtime (CLR) type of the user data and the CLR type of the activity from which the user data must be emitted.

Properties

ActivityType

Gets or sets the common language runtime (CLR) type of the activity from which the user data must be emitted to be tracked.

ActivityTypeName

Gets or sets the unqualified name of the common language runtime (CLR) type of the activity from which the user data must be emitted to be tracked.

ArgumentType

Gets or sets the common language runtime (CLR) type of the user data to be tracked.

ArgumentTypeName

Gets or sets the unqualified name of the common language runtime (CLR) type of the user data to be tracked.

Conditions

Gets a collection of conditions that are used to qualify the activity from which the user data must be emitted to be tracked.

KeyName

Gets or sets the name with which the user data must be associated for the UserTrackingLocation to be matched.

MatchDerivedActivityTypes

Gets or sets a value that indicates whether the user data should be tracked when it is emitted from activities derived from the activity type specified by ActivityType or ActivityTypeName.

MatchDerivedArgumentTypes

The User tracking location is a way to filter user tracked data. The user can filter by the type of the user tracked data by specifying the ArgumentType or ArgumentTypeName. Setting the MatchDerivedArgumentTypes to true specifies that the user tracked data can be of type ArgumentType/ArgumentTypeName or a type derived from the ArgumentType/ArgumentTypeName.

Methods

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to